Remote device control and energy monitoring by analyzing and applying rules

ABSTRACT

Techniques are described for providing remote device (e.g., thermostat, lighting, appliance, etc.) control and/or energy monitoring. A system monitors sensor data captured by one or more sensors that sense attributes relevant to user presence at one or more monitored properties and status of one or more energy consuming devices associated with the one or more monitored properties. The system analyzes the monitored sensor data and the monitored device status with respect to a set of one or more rules and performs an operation related to controlling the one or more energy consuming devices based on the analysis of the monitored sensor data and the monitored device status with respect to the set of one or more rules.

CROSS REFERENCE TO RELATED APPLICATIONS

The present application is a continuation of U.S. patent applicationSer. No. 16/556,807, filed Aug. 30, 2019, now allowed, which is acontinuation of U.S. patent application Ser. No. 15/942,746, filed Apr.2, 2018, now U.S. Pat. No. 10,401,811, issued Sep. 3, 2019, which is acontinuation of U.S. patent application Ser. No. 15/076,165, filed Mar.21, 2016, now U.S. Pat. No. 9,933,766, issued Apr. 3, 2018, which is acontinuation of U.S. patent application Ser. No. 14/200,380, filed Mar.7, 2014, now U.S. Pat. No. 9,293,036, issued Mar. 22, 2016, which is acontinuation of U.S. patent application Ser. No. 13/735,198, filed Jan.7, 2013, now U.S. Pat. No. 8,674,816, issued Mar. 18, 2014, which is acontinuation of U.S. patent application Ser. No. 12/782,626, filed May18, 2010, now U.S. Pat. No. 8,350,697, issued Jan. 8, 2013, which claimsthe benefit of U.S. Provisional Application No. 61/179,224, filed May18, 2009. All of these prior applications are incorporated herein byreference in their entirety for all purposes.

TECHNICAL FIELD

This disclosure relates to remote device control and energy monitoringtechnology.

BACKGROUND

Many people equip homes and businesses with alarm systems to provideincreased security for their homes and businesses. Alarm systems mayinclude control panels that a person may use to control operation of thealarm system and sensors that monitor for security breaches. In responseto an alarm system detecting a security breach, the alarm system maygenerate an audible alert and, if the alarm system is monitored by amonitoring service, the alarm system may send electronic data to themonitoring service to alert the monitoring service of the securitybreach.

SUMMARY

Techniques are described for remote device control and energymonitoring.

In one aspect, a method is described for performing an operation relatedto controlling one or more energy consuming devices. The method includesmonitoring sensor data captured by one or more sensors that senseattributes relevant to user presence at one or more monitored propertiesand monitoring status of one or more energy consuming devices associatedwith the one or more monitored properties. The method also includesanalyzing the monitored sensor data and the monitored device status withrespect to a set of one or more rules and performing, using at least oneprocessor, an operation related to controlling the one or more energyconsuming devices based on the analysis of the monitored sensor data andthe monitored device status with respect to the set of one or morerules.

Implementations may include one or more of the following features. Forexample, the method may include automatically, without humanintervention, controlling the one or more energy consuming devices basedon the analysis of the monitored sensor data and the monitored devicestatus with respect to the set of one or more rules. In another example,the method may include sending, to a user associated with the one ormore monitored properties, an alert with a suggestion for controllingthe one or more energy consuming devices based on the analysis of themonitored sensor data and the monitored device status with respect tothe set of one or more rules.

In some implementations, the method may include determining whether aproperty is occupied based on at least one of a door sensor that senseswhether a door at the property is oriented in an open position or aclosed position, a motion sensor that senses motion within the property,and an image sensor that captures images of the property, and monitoringa temperature setting of a thermostat that controls a heating andcooling system for the property. In these implementations, the methodmay include comparing the determination of whether the property isoccupied and the temperature setting of the thermostat with the set ofone or more rules and performing an operation related to changing thetemperature setting of the thermostat based on the comparison.

In some examples, the method may include determining whether an area ofa property corresponding to a lighting device is occupied based on atleast one of a door sensor that senses whether a door at the area of theproperty is oriented in an open position or a closed position, a motionsensor that senses motion within the area of the property, and an imagesensor that captures images of the area of the property and monitoringan operating state of the lighting device that provides lighting for thearea of the property. In these examples, the method may includecomparing the determination of whether the area of the property isoccupied and the operating state of the lighting device with the set ofone or more rules and performing an operation related to changing theoperating state of the lighting device based on the comparison. Inaddition, the method may include monitoring, over time for a property,sensor data captured by one or more sensors that sense attributes at theproperty. The monitored sensor data may include at least one of doorsensor data captured by a door sensor that senses whether a door at theproperty is oriented in an open position or a closed position, motionsensor data captured by a motion sensor that senses motion within theproperty, image sensor data captured by an image sensor that capturesimages of the property, and security system arming data captured by asecurity panel that enables a user to arm or disarm a security systemthat monitors the property. The method may include determining apresence pattern for the property based on the monitoring of the sensordata over time for the property, analyzing the determined presencepattern for the property and the monitored device status with respect tothe set of one or more rules, and performing an operation related tocontrolling one or more energy consuming devices associated with theproperty based on the analysis of the determined presence pattern forthe property and the monitored device status with respect to the set ofone or more rules. Further, the method may include automatically,without human intervention, controlling the one or more energy consumingdevices associated with the property to conserve energy when thedetermined presence pattern for the property indicates that the propertyis not occupied.

In some implementations, the method may include accessing weather dataand analyzing the accessed weather data in conjunction with themonitored sensor data and the monitored status of one or more energyconsuming devices with respect to the set of one or more rules. In theseimplementations, the method may include determining an operation relatedto controlling the one or more energy consuming devices that accountsfor the accessed weather data based on the analysis of the accessedweather data in conjunction with the monitored sensor data and themonitored status of one or more energy consuming devices, and performingthe determined operation related to controlling the one or more energyconsuming devices that accounts for the accessed weather data.

In some examples, the method may include monitoring geographic locationdata of one or more users associated with the one or more monitoredproperties and inferring future occupancy status of the one or moreusers in the one or more monitored properties based on the monitoredgeographic location data. In these examples, the method may includedetermining an operation related to controlling the one or more energyconsuming devices in the one or more monitored properties based on theinferred future occupancy status of the one or more users in the one ormore monitored properties, and performing the determined operationrelated to controlling the one or more energy consuming devices.

Further, the method may include determining a distance of a user from aproperty based on the monitored geographic location data, comparing thedistance of the user from the property to a threshold distance from theproperty, and determining whether the user is within the thresholddistance from the property based on the comparison. The method also mayinclude inferring that the user will occupy the property within aparticular period of time based on a determination that the user iswithin the threshold distance from the property and inferring that theuser will not occupy the property within the particular period of timebased on a determination that the user is outside of the thresholddistance from the property. The method further may include performing anoperation related to preparing the property for occupation by theparticular period of time based on an inference that the user willoccupy the property within the particular period of time, and performingan operation related to conserving energy during the particular periodof time based on an inference that the user will not occupy the propertywithin the particular period of time.

In some implementations, the method may include determining a directionin which the user is traveling based on the monitored geographiclocation data and determining whether the user is traveling toward theproperty or away from the property based on the determined direction inwhich the user is traveling. In these implementations, the method mayinclude inferring that the user will occupy the property within aparticular period of time based on a determination that the user istraveling toward the property and inferring that the user will notoccupy the property within the particular period of time based on adetermination that the user is traveling away from the property. Also,in these implementations, the method may include performing an operationrelated to preparing the property for occupation by the particularperiod of time based on an inference that the user will occupy theproperty within the particular period of time and performing anoperation related to conserving energy during the particular period oftime based on an inference that the user will not occupy the propertywithin the particular period of time.

In some examples, the method may include detecting an event thattriggers an operation related to controlling the one or more energyconsuming devices based on the monitored sensor data and determining auser identity for one or more users associated with the detected event.In these examples, the method may include determining a user-specificoperation related to controlling the one or more energy consumingdevices based on the detected event and the determined user identity forthe one or more users and performing the user-specific operation relatedto controlling the one or more energy consuming devices.

In addition, the method may include determining a first user identity ofa first user associated with the detected event and determining a seconduser identity of a second user associated with the detected event. Thesecond user identity may be different than the first user identity. Themethod also may include accessing, from electronic storage, a firstdevice control profile defined for the determined first user identityand accessing, from electronic storage, a second device control profiledefined for the determined second user identity. The first devicecontrol profile may be different than the second device control profile.The method further may include accessing, from electronic storage, oneor more permission rules that indicate which device control profilecontrols when multiple user identities are determined to be associatedwith the detected event, determining an operation related to controllingthe one or more energy consuming devices based on the accessed firstdevice control profile, the accessed second device control profile, andthe accessed one or more permission rules, and performing the operationrelated to controlling the one or more energy consuming devicesdetermined based on the accessed first device control profile, theaccessed second device control profile, and the accessed one or morepermission rules.

Further, the method may include monitoring sensor data captured bysensors that sense attributes relevant to user presence at multiple,different locations and aggregating the monitored sensor data from themultiple, different locations. The method also may include analyzing theaggregated sensor data from the multiple, different locations withrespect to the set of one or more rules and performing an operationrelated to controlling the one or more energy consuming devicesassociated with one of the multiple, different locations based on theanalysis of the aggregated sensor data.

In some implementations, the method may include monitoring first sensordata captured by first local sensors that sense attributes relevant touser presence at a first property and monitoring second sensor datacaptured by second local sensors that sense attributes relevant to userpresence at a second property. The second property may be separate andremote from the first property. In these implementations, the method mayinclude performing an operation related to controlling one or moreenergy consuming devices associated with the second property based onthe first sensor data captured by the first local sensors that senseattributes relevant to user presence at the first property.

In addition, the method may include defining an energy managementprofile for the one or more monitored properties and monitoring energyusage for the one or more energy consuming devices associated with theone or more monitored properties. The method also may include analyzingthe monitored energy usage, the monitored sensor data, and the monitoreddevice status with respect to the energy management profile andperforming an operation related to managing energy consumption for theone or more monitored properties based on the analysis of the monitoredenergy usage, the monitored sensor data, and the monitored device statuswith respect to the energy management profile.

In some examples, the method may include defining, as part of the energymanagement profile, one or more rules that indicate instances in whichit is acceptable to modify energy usage of the one or more energyconsuming devices in accordance with utility rate data and analyzing themonitored energy usage, the monitored sensor data, and the monitoreddevice status with respect to the one or more rules that indicateinstances in which it is acceptable to modify energy usage of the one ormore energy consuming devices in accordance with utility rate data. Inthese examples, the method may include, when the analysis of themonitored energy usage, the monitored sensor data, and the monitoreddevice status with respect to the one or more rules reveals that it isacceptable to modify energy usage of the one or more energy consumingdevices in accordance with utility rate data, accessing utility ratedata that includes data specifying low-rate time periods when energyconsumption rates are at a relatively low level, medium-rate timeperiods when energy consumption rates are at a relatively medium level,and high-rate time periods when energy consumption rates are at arelatively high level and controlling the one or more energy consumingdevices to reduce energy consumption expense based on the accessedutility rate data.

The method may include defining, as part of the energy managementprofile, one or more thresholds that define circumstances in whichenergy conservation operations are permitted and circumstances in whichenergy conservation operations are forbidden and analyzing the monitoredenergy usage, the monitored sensor data, and the monitored device statuswith respect to the one or more thresholds. The method also may includecontrolling the one or more energy consuming devices to conserve energywhen the analysis of the monitored energy usage, the monitored sensordata, and the monitored device status with respect to the one or morethresholds reveals that energy conservation operations are permitted.The method further may include controlling the one or more energyconsuming devices without regard for energy conservation when theanalysis of the monitored energy usage, the monitored sensor data, andthe monitored device status with respect to the one or more thresholdsreveals that energy conservation operations are forbidden.

In some implementations, the method may include monitoring energyconsumption data for multiple, different monitored properties,monitoring sensor data for the multiple, different monitored properties,and monitoring device status for energy consuming devices associatedwith the multiple, different monitored properties. In theseimplementations, the method may include identifying an efficient energyuser based on the monitored energy consumption data, the monitoredsensor data, and the monitored device status, determining an energyusage profile for the efficient energy user based on the monitoredenergy consumption data, the monitored sensor data, and the monitoreddevice status, and providing an energy usage suggestion to another userthat is different than the efficient energy user based on the determinedenergy usage profile for the efficient energy user.

In some examples, the method may include identifying an energy usagelevel of a monitored property based on the monitored energy consumptiondata and identifying an activity level of the monitored property basedon the monitored sensor data and the monitored device status. Theactivity level of the monitored property may represent how frequentlythe monitored property is determined to be occupied based on themonitored sensor data and how frequently energy consuming devices aredetected as being in use in the monitored property based on themonitored device status. In these examples, the method may includedetermining a ratio of the identified energy usage level of themonitored property and the identified activity level of the monitoredproperty and identifying a user of the monitored property as theefficient energy user based on the determined ratio. Further, in theseexamples, the method may include identifying another monitored propertythat has an activity level that is similar to the identified activitylevel of the monitored property and that has an energy usage level thatis higher than the identified energy usage level of the monitoredproperty and providing the energy usage suggestion to a user of theother monitored property.

Implementations of the described techniques may include hardware, amethod or process implemented at least partially in hardware, or acomputer-readable storage medium encoded with executable instructionsthat, when executed by a processor, perform operations.

The details of one or more implementations are set forth in theaccompanying drawings and the description below. Other features will beapparent from the description and drawings, and from the claims.

DESCRIPTION OF DRAWINGS

FIGS. 1A and 1B illustrate an example of controlling devices based onmonitored sensor data and device status.

FIG. 2 is a block diagram of an example system.

FIGS. 3, 9, 11, 13, 15, 17, and 19 are flow charts illustrating exampleprocesses.

FIG. 4 illustrates example rules.

FIGS. 5-8 illustrate example interfaces.

FIG. 10 illustrates an example of providing an alert based on monitoringsystem data and weather data.

FIG. 12 illustrates an example of controlling devices in a propertybased on geographic proximity of a user to the property.

FIGS. 14A and 14B illustrate examples of controlling devices based ondetected user identity.

FIGS. 16A, 16B, and 16C illustrate examples of controlling devices basedon aggregated sensor data from multiple, different locations.

FIG. 18 illustrates an example energy management profile.

FIG. 20 illustrates an example of providing energy usage suggestionsbased on determined energy usage profiles for efficient energy users.

DETAILED DESCRIPTION

Techniques are described for providing remote device (e.g., thermostat,lighting, appliance, etc.) control and/or energy monitoring. Thetechniques may combine energy conservation efforts with user convenienceand may provide remote device control and/or energy monitoring thatconserves energy while providing an enhanced level of convenience tousers.

In some implementations, a native mobile device application enables useof a mobile device to monitor and control thermostat, lighting, andother energy-consuming appliances in a home, business, vacation or otherproperty from anywhere. The native mobile device application providesalerts related to energy consumption and events that may impact userdecision on energy consumption. The native mobile device applicationalso tracks the mobile device's physical location and uses locationtracking to automatically set thermostat, lights, and appliancesaccordingly.

FIGS. 1A and 1B illustrate an example of monitoring sensor data anddevice status, and controlling devices based on the monitored sensordata and device status. As shown, a property 110 is monitored by amonitoring system 120. The property 110 may be a residence, an officebuilding, or any other type of property that is capable of beingmonitored by the monitoring system 120. The monitoring system 120 may bea local monitoring system (e.g., a local security system for theproperty 110) that is located at the property and monitors physicalevents and device status at the property 110 through one or moresensors. The monitoring system 120 also may be remote from the property110 and receive, over a network, sensor data from one or more sensorslocated at the property 110. The monitoring system 120 further mayinclude both local components that are located at the property 110 andremote components that are located separate from the property 110 atanother property.

In the example shown in FIGS. 1A and 1B, the property 110 includes twolevels. The first level has a first lighting device 132, a first motionsensor 134, a first thermostat 136, and a first heating and coolingsystem 138. The monitoring system 120 monitors the state (e.g., on, off,dimmer setting) of the first lighting device 132 and controls (e.g.,turns on or off) the first lighting device 132. The monitoring system120 also receives motion sensor data for the first level from the firstmotion sensor 134. The monitoring system 120 further monitors the state(e.g., the mode set, current temperature measured, etc.) of the firstthermostat 136 and controls the first thermostat 136. The firstthermostat 136 measures a temperature associated with the first leveland the controls the first heating and cooling system 138 based on themeasured temperature and a temperature control setting of the firstthermostat 136. The monitoring system 120 monitors and controls thefirst lighting device 132 and the first thermostat 136 using acontroller, such as a zwave controller.

Similar to the first level, the second level has a second lightingdevice 152, a second motion sensor 154, a second thermostat 156, and asecond heating and cooling system 158. The monitoring system 120monitors the state (e.g., on, off, dimmer setting) of the secondlighting device 152 and controls (e.g., turns on or off) the secondlighting device 152. The monitoring system 120 also receives motionsensor data for the second level from the second motion sensor 154. Themonitoring system 120 further monitors the state (e.g., the mode set,current temperature measured, etc.) of the second thermostat 156 andcontrols the second thermostat 156. The second thermostat 156 measures atemperature associated with the second level and controls the secondheating and cooling system 158 based on the measured temperature and atemperature control setting of the second thermostat 156. The monitoringsystem 120 monitors and controls the second lighting device 152 and thesecond thermostat 156 using a controller, such as a zwave controller.

In the example shown in FIG. 1A, the monitoring system 120 sets devicestatus and control data 170A based on a state of the lightingdevices/thermostats and the activity in the property 110 sensed by themotion sensors. The device status and control data 170A includes adevice column 172, a status column 174, and a control action column 176.As shown in FIG. 1A, the monitoring system 120 detects that the firstlighting device 132 is turned on, the second lighting device 152 isturned on, the first thermostat 136 is set at a normal climate controlmode, and the second thermostat 156 is set at a normal climate controlmode. In addition, the monitoring system 120 detects that the firstmotion sensor 134 detected motion within the last ten minutes (e.g.,based on the presence of user 140 on the first level) and the secondmotion sensor 154 detected motion within the last ten minutes (e.g.,based on the presence of user 160 on the second level). Because themonitoring system 120 detected activity that indicates presence of auser on each of the first and second levels of the property 110, themonitoring system 120 determines to control lighting devices andthermostats in a manner that is suitable for user presence on each ofthe first and second levels of the property 110. In this regard, themonitoring system 120 determines to maintain the first lighting device132 turned on, maintain the second lighting device 152 turned on,maintain the first thermostat 136 set at the normal climate controlmode, and maintain the second thermostat 156 set at the normal climatecontrol mode.

In the example shown in FIG. 1B, the user 160 has moved from the secondlevel and joined the user 140 on the first level of the property 110.After the user 160 has moved to the first level, the monitoring system120 sets new device status and control data 170B based on a state of thelighting devices/thermostats and the activity in the property 110 sensedby the motion sensors. The device status and control data 170B includesa device column 172, a status column 174, and a control action column176. As shown in FIG. 1B, the monitoring system 120 detects that thefirst lighting device 132 is turned on, the second lighting device 152is turned on, the first thermostat 136 is set at the normal climatecontrol mode, and the second thermostat 156 is set at the normal climatecontrol mode. In addition, the monitoring system 120 detects that thefirst motion sensor 134 detected motion within the last ten minutes(e.g., based on the presence of users 140 and 160 on the first level)and the second motion sensor 154 has not detected motion within the lastten minutes. Because the monitoring system 120 detected activity thatindicates presence of a user on the first level, but not the secondlevel of the property 110, the monitoring system 120 determines tocontrol lighting devices and thermostats in a manner that is suitablefor user presence on the first level, but conserves energy on the secondlevel of the property 110. In this regard, the monitoring system 120determines to maintain the first lighting device 132 turned on, turn thesecond lighting device 152 off, maintain the first thermostat 136 set atthe normal climate control mode, and set the second thermostat 156 to anenergy conserve mode. Because the monitoring system 120 monitors thestate of devices within the property 110 and the activity of userswithin the property 110, the monitoring system 120 is able toautomatically control devices within the property 110 to provideenhanced energy conservation and property automation.

FIG. 2 illustrates an example of an electronic system 200 configured toprovide remote thermostat control/energy monitoring using devices. Theelectronic system 200 includes a network 205, a monitoring systemcontrol unit 210, one or more mobile devices 240, 250, a monitoringapplication server 260, and one or more client devices 270, 280. In someexamples, the network 205 facilitates communications between themonitoring system control unit 210, the one or more mobile devices 240,250, the one or more client devices 270, 280, and the monitoringapplication server 260.

The network 205 is configured to enable exchange of electroniccommunications between devices connected to the network 205. Forexample, the network 205 may be configured to enable exchange ofelectronic communications between the monitoring system control unit210, the one or more mobile devices 240, 250, the one or more clientdevices 270, 280, and the monitoring application server 260. The network205 may include, for example, one or more of the Internet, Wide AreaNetworks (WANs), Local Area Networks (LANs), analog or digital wired andwireless telephone networks (e.g., a public switched telephone network(PSTN), Integrated Services Digital Network (ISDN), a cellular network,and Digital Subscriber Line (DSL)), radio, television, cable, satellite,or any other delivery or tunneling mechanism for carrying data. Network205 may include multiple networks or subnetworks, each of which mayinclude, for example, a wired or wireless data pathway. The network 205may include a circuit-switched network, a packet-switched data network,or any other network able to carry electronic communications (e.g., dataor voice communications). For example, the network 205 may includenetworks based on the Internet protocol (IP), asynchronous transfer mode(ATM), the PSTN, packet-switched networks based on IP, X.25, or FrameRelay, or other comparable technologies and may support voice using, forexample, VoIP, or other comparable protocols used for voicecommunications. The network 205 may include one or more networks thatinclude wireless data channels and wireless voice channels. The network205 may be a wireless network, a broadband network, or a combination ofnetworks including a wireless network and a broadband network.

The monitoring system control unit 210 includes a controller 212 and anetwork module 214. The controller 212 is configured to control amonitoring system (e.g., a home alarm or security system) that includesthe monitoring system control unit 210. In some examples, the controller212 may include a processor or other control circuitry configured toexecute instructions of a program that controls operation of an alarmsystem. In these examples, the controller 212 may be configured toreceive input from sensors, detectors, or other devices included in thealarm system and control operations of devices included in the alarmsystem or other household devices (e.g., a thermostat, an appliance,lights, etc.). For example, the controller 212 may be configured tocontrol operation of the network module 214 included in the monitoringsystem control unit 210.

The network module 214 is a communication device configured to exchangecommunications over the network 205. The network module 214 may be awireless communication module configured to exchange wirelesscommunications over the network 205.

For example, the network module 214 may be a wireless communicationdevice configured to exchange communications over a wireless datachannel and a wireless voice channel. In this example, the networkmodule 214 may transmit alarm data over a wireless data channel andestablish a two-way voice communication session over a wireless voicechannel. The wireless communication device may include one or more of aGSM module, a radio modem, cellular transmission module, or any type ofmodule configured to exchange communications in one of the followingformats: GSM or GPRS, CDMA, EDGE or EGPRS, EV-DO or EVDO, UMTS, or IP.

The network module 214 also may be a wired communication moduleconfigured to exchange communications over the network 205 using a wiredconnection. For instance, the network module 214 may be a modem, anetwork interface card, or another type of network interface device. Thenetwork module 214 may be an Ethernet network card configured to enablethe monitoring system control unit 210 to communicate over a local areanetwork and/or the Internet. The network module 214 also may be avoiceband modem configured to enable the alarm panel to communicate overthe telephone lines of Plain Old Telephone Systems (POTS).

The monitoring system that includes the monitoring system control unit210 includes one or more sensors or detectors. For example, themonitoring system may include multiple sensors. The sensors may includea contact sensor, a motion sensor, a glass break sensor, or any othertype of sensor included in an alarm system or security system. Thesensors also may include an environmental sensor, such as a temperaturesensor, a water sensor, a rain sensor, a wind sensor, a light sensor, asmoke detector, a carbon monoxide detector, an air quality sensor, etc.The sensors further may include a health monitoring sensor, such as aprescription bottle sensor that monitors taking of prescriptions, ablood pressure sensor, a blood sugar sensor, a bed mat configured tosense presence of liquid (e.g., bodily fluids) on the bed mat, etc. Insome examples, the sensors may include a radio-frequency identification(RFID) sensor that identifies a particular article that includes apre-assigned RFID tag. In addition, the sensors may include avideo/photographic camera or other type of optical sensing deviceconfigured to capture images and may include an energy consumptionsensor for appliances and devices in a property monitored by themonitoring system.

The monitoring system control unit 210 communicates with modules 220,222, and 230 to perform thermostat control and energy monitoring. Themodule 220 is connected to one or more appliances, is configured tomonitor energy consumption of the one or more appliances, and isconfigured to control operation of the one or more appliances. Themodule 220 may directly measure energy consumption of the one or moreappliances or may estimate energy consumption of the one or moreappliances based on detected usage of the one or more appliances. Themodule 220 may communicate energy monitoring information to themonitoring system control unit 210 and may control the one or moreappliances based on commands received from the monitoring system controlunit 210.

The module 222 is connected to one or more lighting systems, isconfigured to monitor energy consumption of the one or more lightingsystems, and is configured to control operation of the one or morelighting systems. The module 222 may directly measure energy consumptionof the one or more lighting systems or may estimate energy consumptionof the one or more lighting systems based on detected usage of the oneor more lighting systems. The module 222 may communicate energymonitoring information to the monitoring system control unit 210 and maycontrol the one or more lighting systems based on commands received fromthe monitoring system control unit 210.

The module 230 is connected to a thermostat, is configured to monitortemperature and/or energy consumption of a temperature regulation systemassociated with the thermostat, and is configured to control operationof the thermostat. The module 230 may directly measure energyconsumption of the temperature regulation system associated with thethermostat or may estimate energy consumption of the temperatureregulation system associated with the thermostat based on detected usageof the temperature regulation system associated with the thermostat. Themodule 230 may communicate temperature and energy monitoring informationto the monitoring system control unit 210 and may control the thermostatbased on commands received from the monitoring system control unit 210.

The modules 220, 222, and 230 communicate with the controller 212 overcommunication links 224, 226, and 228. The communication links 224, 226,and 228 may be a wired or wireless data pathway configured to transmitsignals from the modules 220, 222, and 230 to the controller 212. Themodules 220, 222, and 230 may continuously transmit sensed values to thecontroller 212, periodically transmit sensed values to the controller212, or transmit sensed values to the controller 212 in response to achange in a sensed value.

The monitoring application server 260 is an electronic device configuredto provide monitoring services by exchanging electronic communicationswith the monitoring system control unit 210, the one or more mobiledevices 240, 250, and the one or more client devices 270, 280 over thenetwork 205. For example, the monitoring application server 260 may beconfigured to monitor events generated by the monitoring system controlunit 210. In this example, the monitoring application server 260 mayexchange electronic communications with the network module 214 includedin the monitoring system control unit 210 to receive informationregarding alarm events detected by the monitoring system control unit210. The monitoring application server 260 also may receive informationregarding events from the one or more mobile devices 240, 250.

The monitoring application server 260 may store sensor (e.g., thermostatand energy consumption) data received from the monitoring system andperform analysis of sensor data received from the monitoring system.Based on the analysis, the monitoring application server 260 maycommunicate with and control aspects of the monitoring system controlunit 210, the one or more mobile devices 240, 250, or the one or moreclient devices 270, 280.

The one or more mobile devices 240, 250 are devices that host anddisplay user interfaces and that host one or more native applications(e.g., the native monitoring application 242, 252). The one or moremobile devices 240, 250 may be cellular phones or non-cellular locallynetworked devices with displays. The one or more mobile devices 240, 250may include a cell phone, a smart phone, a tablet PC, a personal digitalassistant (“PDA”), or any other portable device configured tocommunicate over a network and display information. For example,implementations may also include Blackberry-type devices (e.g., asprovided by Research in Motion), electronic organizers, iPhone-typedevices (e.g., as provided by Apple), iPod devices (e.g., as provided byApple) or other portable music players, other communication devices, andhandheld or portable electronic devices for gaming, communications,and/or data organization. The one or more mobile devices 240, 250 may bethe same or may include mobile devices of different types. The one ormore mobile devices 240, 250 may perform functions unrelated to themonitoring system, such as placing personal telephone calls, playingmusic, playing video, displaying pictures, browsing the Internet,maintaining an electronic calendar, etc.

The one or more mobile devices 240, 250 communicate with and receivemonitoring system data from the monitoring system control unit 210 usingthe communication link 238. For instance, the one or more mobile devices240, 250 may communicate with the monitoring system control unit 210using various local wireless protocols such as wifi, Bluetooth, zwave,zigbee, HomePlug (ethernet over powerline), or wired protocols such asEthernet and USB, to connect the one or more mobile devices 240, 250 tolocal security and automation equipment. The one or more mobile devices240, 250 may connect locally to the monitoring system and its sensorsand other devices. The local connection may improve the speed of statusand control communications because communicating through the network 205with a remote server (e.g., the monitoring application server 260) maybe significantly slower.

Although the one or more mobile devices 240, 250 are shown ascommunicating with the monitoring system control unit 210, the one ormore mobile devices 240, 250 may communicate directly with the sensorsand other devices controlled by the monitoring system control unit 210.

In some implementations, the one or more mobile devices 240, 250 replacethe monitoring system control unit 210 and perform the functions of themonitoring system control unit 210 for local monitoring and longrange/offsite communication.

In other implementations, the one or more mobile devices 240, 250receive monitoring system data captured by the monitoring system controlunit 210 through the network 205. The one or more mobile devices 240,250 may receive the data from the monitoring system control unit 210through the network 205 or the monitoring application server 260 mayrelay data received from the monitoring system control unit 210 to theone or more mobile devices 240, 250 through the network 205. In thisregard, the monitoring application server 260 may facilitatecommunication between the one or more mobile devices 240, 250 and themonitoring system.

In some implementations, the one or more mobile devices 240, 250 may beconfigured to switch whether the one or more mobile devices 240, 250communicate with the monitoring system control unit 210 directly (e.g.,through link 238) or through the monitoring application server 260(e.g., through network 205) based on a location of the one or moremobile devices 240, 250. For instance, when the one or more mobiledevices 240, 250 are located close to the monitoring system control unit210 and in range to communicate directly with the monitoring systemcontrol unit 210, the one or more mobile devices 240, 250 use directcommunication. When the one or more mobile devices 240, 250 are locatedfar from the monitoring system control unit 210 and not in range tocommunicate directly with the monitoring system control unit 210, theone or more mobile devices 240, 250 use communication through themonitoring application server 260.

Although the one or more mobile devices 240, 250 are shown as beingconnected to the network 205, in some implementations, the one or moremobile devices 240, 250 are not connected to the network 205. In theseimplementations, the one or more mobile devices 240, 250 communicatedirectly with one or more of the monitoring system components and nonetwork (e.g., Internet) connection or reliance on remote servers isneeded.

In some implementations, the one or more mobile devices 240, 250 areused in conjunction with only local sensors and/or local devices in ahouse. In these implementations, the system 100 only includes the one ormore mobile devices 240, 250 and the modules 220, 222, and 230. The oneor more mobile devices 240, 250 receive data directly from the modules220, 222, and 230 and sends data directly to the modules 220, 222, and230. The one or more mobile devices 240, 250 provide the appropriateinterfaces/processing to provide monitoring information, generatealerts, modify settings, control the thermostat, lighting, and appliancedevices, etc.

In other implementations, the system 200 further includes network 205and the modules 220, 222, and 230 are configured to communicate sensordata to the one or more mobile devices 240, 250 over network 205 (e.g.,the Internet, cellular network, etc.). In yet another implementation,the modules 220, 222, and 230 (or a component, such as a bridge/router)are intelligent enough to change the communication pathway from a directlocal pathway when the one or more mobile devices 240, 250 are in closephysical proximity to the modules 220, 222, and 230 to a pathway overnetwork 205 when the one or more mobile devices 240, 250 are fartherfrom the modules 220, 222, and 230. In some examples, the systemleverages GPS information from the one or more mobile devices 240, 250to determine whether the one or more mobile devices 240, 250 are closeenough to the modules 220, 222, and 230 to use the direct local pathwayor whether the one or more mobile devices 240, 250 are far enough fromthe modules 220, 222, and 230 that the pathway over network 205 isrequired. In other examples, the system leverages status communications(e.g., pinging) between the one or more mobile devices 240, 250 and themodules 220, 222, and 230 to determine whether communication using thedirect local pathway is possible. If communication using the directlocal pathway is possible, the one or more mobile devices 240, 250communicate with the modules 220, 222, and 230 using the direct localpathway. If communication using the direct local pathway is notpossible, the one or more mobile devices 240, 250 communicate with themodules 220, 222, and 230 using the pathway over network 205.

The one or more mobile devices 240, 250 each include a native monitoringapplication 242, 252, respectively. The native monitoring application242, 252 refers to a software/firmware program running on thecorresponding mobile device that enables the user interface and featuresdescribe below. The one or more mobile devices 240, 250 may load orinstall the native monitoring application 242, 252 based on datareceived over a network or data received from local media. The nativemonitoring application 242, 252 runs on mobile devices platforms, suchas iPhone, iPod touch, Blackberry, Google Android, Windows Mobile, etc.

The native monitoring application 242, 252 monitors and controlsthermostat, lighting, and other energy-consuming appliances in a home,business, vacation or other property from anywhere. The nativemonitoring application 242, 252 enables users to easily monitor andcontrol how much energy they are consuming. The native monitoringapplication 242, 252 also enables users to set up a comfortableenvironment with respect to temperature, lighting, etc.

In some implementations, the native monitoring application 242, 252enables the mobile device to connect to thermostat(s) remotely andprovide a user real-time, remote control of temperature in a building.For example, a user may take the user's mobile device on a business tripout of town. While the user is out of town, the weather at the user'shome becomes unexpectedly hot. The user may use native monitoringapplication 242, 252 to control the thermostat(s) in the user's home toturn the air conditioning system on or adjust a temperature of the hometo a desired level. In this example, when the temperature becomes hotand the user has a pet that remains in the home, the user may lower thetemperature of the thermostat to cool the home to increase the comfortof the pet. Alternatively, when the temperature becomes hot and no oneremains in the home, the user may increase the temperature of thethermostat to save on energy costs of cooling the home unnecessarily.

In some examples, the native monitoring application 242, 252 tracks themobile device's physical location using GPS or other location protocolsbuilt into device and uses location tracking to control thermostat,lighting, and other energy-consuming appliances. For example, the nativemonitoring application 242, 252 may check location of the mobile deviceperiodically and automatically detect when user is going toward or awayfrom a home and sets thermostat, lights, appliances accordingly. Forinstance, when the user is detected as moving away from the home andlights remain on in the property, the native monitoring application 242,252 may turn off the lights. When the user is detected is moving towardthe home, the native monitoring application 242, 252 may turn on lightsin the home, adjust the thermostat to a comfortable setting, and turn onuseful appliances when the user is less than a threshold distance fromthe home.

The native monitoring application 242, 252 also may alert the userduring time frames when their energy utility company is charging more orless for energy, so user can take action through the native monitoringapplication 242, 252. For instance, the native monitoring application242, 252 may receive information related to utility company rates fromthe monitoring application server 260, from another source on theInternet, or from a user entering information related to utility companyrates (e.g., a user entering monthly billing statements). The nativemonitoring application 242, 252 may store the rate information for usein alerting the user. The native monitoring application 242, 252 mayperiodically update the rate information. In using rate information toalert the user, the native monitoring application 242, 252 may providean alert to the user when lights remain on in the home and the rateinformation indicates that the utility company is charging relativelyhigh rates, but determine not to provide an alert to the user whenlights remain on in the home and the rate information indicates that theutility company is charging relatively low rates. In another example,the native monitoring application 242, 252 may alert the user when thenative monitoring application 242, 252 detects the user starting anappliance (e.g., a dishwasher) at a time when the rate is relativelyhigh. In this example, if the user determines not to use the applianceat the time, the native monitoring application 242, 252 may offer toprovide another alert to the user when the utility company rate drops oroffer to automatically start the appliance when the utility company ratedrops.

In further examples, native monitoring application 242, 252 mayautomatically change thermostat temperature on user behalf in responseto utility pricing based on user settings. For instance, the nativemonitoring application 242, 252 may define rules for thermostat controlbased on user input. The rules may account utility pricing and priorenergy consumption. For example, the native monitoring application 242,252 may define a rule to automatically increase a temperature of athermostat two degrees when the utility company rate is relatively highand the air conditioner is being used. In this example, the nativemonitoring application 242, 252 may automatically decrease thetemperature of the thermostat two degrees when the utility company ratefalls back to a relatively low rate and the air conditioner is stillbeing used.

The native monitoring application 242, 252 further may account for priormonthly energy consumption in automatically setting temperatures. Forinstance, when monthly energy consumption has been relatively high, thenative monitoring application 242, 252 may automatically increase atemperature of a thermostat two degrees when the utility company rate isrelatively high and the air conditioner is being used. However, whenmonthly energy consumption has been relatively low, the nativemonitoring application 242, 252 may not automatically increase thetemperature of the thermostat two degrees when the utility company rateis relatively high and the air conditioner is being used. Accounting forprior monthly energy consumption may assist a user in getting moreconsistent energy consumption bills and, therefore, may assist the userin budgeting monthly finances more accurately.

In some implementations, native monitoring application 242, 252 uses areal-time weather feed (e.g. from national weather service) to helpguide intelligent, automated decision making on thermostat temperature.The native monitoring application 242, 252 may receive weatherinformation from the monitoring application server 260 or from anothersource on the Internet. The native monitoring application 242, 252 mayperiodically update the weather information or receive weather relatedalerts. The native monitoring application 242, 252 may account for theweather information in automatically controlling thermostat, lighting,and other energy-consuming appliances and providing alerts to the user.For instance, in the example discussed above in which the weather at auser's home becomes unexpectedly hot when the user is out of town, thenative monitoring application 242, 252 may detect that the weather hasbecome unexpectedly hot based on the weather feed information and alertthe user.

The native monitoring application 242, 252 may include detailed andsummary indoor/outdoor temperature and humidity reports to show usershow they are setting temperature at various times of day. The reportscould cross reference to money paid for energy at given time of day. Thereport data may be based on user input or automatically received oraccessed from a utility company. For instance, users may manually entertheir energy bill amount into the native monitoring application 242, 252each month to get pulled into reporting, or accept a feed from theutility company.

The native monitoring application 242, 252 may monitor sunrise/sunsettimes and automatically turn specified lights on/off at dusk/dawn. Forinstance, the native monitoring application 242, 252 may receiveinformation related to sunrise/sunset times from the monitoringapplication server 260 or from another source on the Internet and storethe information for use in controlling lights.

The native monitoring application 242, 252 may provide user-definedschedules for controlling wake-up and turn-down schemes. For instance,at wake-up time, the native monitoring application 242, 252 may turn ona bedroom light, change a thermostat setting to a day setting, and turnon a coffee maker. At turn-down time, the native monitoring application242, 252 may turn off a bedroom light, change a thermostat setting to anight setting, and arm an alarm system to a “Stay” mode.

The native monitoring application 242, 252 may operate in Home Mode,Away-Work Mode, Away-Vacation Mode and other user defined modes thatcontrol temperature, light, appliance behavior. The native monitoringapplication 242, 252 may define the modes and settings corresponding tothe modes based on user input. The native monitoring application 242,252 also may switch between the modes based on user input or mayautomatically switch between modes based on factors, such as location ofthe mobile device and status of an alarm system at one or morelocations.

The native monitoring application 242, 252 may work as a local remotecontrol device for use when on or near the premises. Alternatively, thenative monitoring application 242, 252 may work as a long-range remotecontrol that could work from anywhere in the world for long-rangewireless protocols (e.g., GSM, CDMA, WiMax, etc.) via remote servers,such as the monitoring application server 260.

The native monitoring application 242, 252 also may implement apermission system that provides a different level of control fordifferent users. For instance, parent users may have full control of themonitoring system and a child user may have limited control (e.g., thechild user may be able to control lighting systems, but may not be ableto control appliances). The permission system may be implemented basedon user-specific passcodes or particular mobile devices may be assignedto particular users.

In implementations in which multiple mobile devices are included in thesystem 100, the native monitoring application 242, 252 may include rulesthat govern input from which of the multiple devices controls whenconflicting input is received. For instance, when a parent user isattempting to perform a first action (e.g., raise temperature) and achild user is attempting to perform a second, different action thatconflicts with the first action (e.g., lower temperature), the rules ofthe native monitoring application 242, 252 (or monitoring system ingeneral) may perform only the first action because the parent user hashigher priority than the child user.

The one or more client devices 270, 280 may be any type of clientdevices (e.g., personal computers) that are capable of performingoperations similar to those described as being performed by the one ormore mobile devices 240, 250. The one or more client devices 270, 280operate a monitoring application 272, 282 either locally or over anetwork. The monitoring application 272, 282 may be similar to thenative monitoring application 242, 252 operated by the one or moremobile devices 240, 250.

FIGS. 3, 9, 11, 13, 15, 17, and 19 illustrate example processes. Theoperations of the example processes are described generally as beingperformed by the system 200. The operations of the example processes maybe performed by one of the components of the system 200 (e.g., themonitoring application server 260) or may be performed by anycombination of the components of the system 200. In someimplementations, operations of the example processes may be performed byone or more processors included in one or more electronic devices.

FIG. 3 illustrates an example process 300 for performing an operationrelated to controlling one or more energy consuming devices based onmonitored sensor data and monitored device status. The system 200monitors sensor data captured by one or more sensors that senseattributes relevant to user presence at one or more properties (310).For example, the system 200 receives, either directly or via a network,data communications from sensors included in a monitoring system thatare configured to sense physical attributes of the physical world at theone or more properties. The sensor data may include presence monitoringevents, such as contact sensor data captured by door and/or windowsensors, motion sensor data captured by a motion sensor, and imagemonitoring data captured by a camera. The sensor data also may includeenvironmental sensor data (e.g., temperature sensor data, air qualitysensor data, water sensor data, etc.), health monitoring sensor data(e.g., blood sugar monitors, blood pressure monitors, etc.), radiofrequency identification (RFID) sensor data (e.g., RFID tags may beapplied to articles (e.g., a car or a prescription bottle) and RFIDsensors may detect presence of the articles), or any other sensor datarelated to physical attributes capable of being monitored using sensortechnology.

The system 200 may monitor the received sensor data for single detectedevents (e.g., a single contact sensor trigger) or a series of detectedevents (e.g., a pattern of contact sensor triggers, a motion sensortrigger, and an RFID tag identification). In addition, the sensor datamay be direct data captured by the sensors or may be processed prior tobeing received by the system 200. The sensor data may processed byperforming statistical calculations on the sensor data to identifytrends within the data (e.g., based on sensor data captured duringtypical work days, a customer leaves the home through the front door onaverage at 8:26 am and enters the home through the front door on averageat 5:38 pm).

The system 200 monitors status of one or more energy consuming devicesassociated with the one or more properties (320). For example, thesystem 200 may receive, either directly or via a network, datacommunications from one or more energy consuming devices located at theone or more properties. In this example, the system 200 may receive thedata communications directly from the one or more energy consumingdevices or from a controller (e.g., a zwave controller) added to the oneor more energy consuming devices. The system 200 may process the datacommunications to determine a state of a device (e.g., whether thedevice is turned on or off) or a control setting for the device (e.g., atarget temperature or schedule for a thermostat). The system 200 alsomay process the data communications to determine measured energyconsumption of the one or more energy consuming devices. The system 200may track device usage patterns for the one or more energy consumingdevices and track energy consumed through operation of the one or moreenergy consuming devices.

The system 200 analyzes the monitored sensor data and the monitoreddevice status with respect to a set of one or more rules (330) andperforms an operation related to controlling the one or more energyconsuming devices based on the analysis (340). For instance, the system200 analyzes events detected using the sensor data in relation to devicestatus information to perform control of the one or more energyconsuming devices. The system 200 may analyze single detected events andtake action according to single detected events. For instance, when thesystem 200 determines that the last user has left a property, the system200 may turn off the lights in the property and set the thermostat to anenergy conserve mode.

The system 200 also may analyze patterns of the sensor data and devicestatus and take action according to the relative overlap in thepatterns. For instance, the system 200 may determine a presence patternthat relates to when users are typically present in a property. Thesystem 200 also may determine a device usage pattern (e.g., a thermostatcontrol pattern, a pattern related to when lighting devices are turnedon and off, a pattern of appliance usage, etc.).

After determining the presence pattern and the device usage pattern, thesystem 200 may compare the device usage pattern with the presencepattern and identify areas in which the patterns do not match. Forexample, the system 200 may determine that lighting devices aretypically turned on and the thermostat is cooling or heating theproperty for long stretches in which the property is unoccupied. In thisexample, the system 200 may determine that this pattern is inefficientand adjust (or suggest adjustment) of the device usage pattern to moreclosely match the presence pattern. Further, when the device usagepattern suggests that devices are not operated in a preferred mannerwhen the property is occupied (e.g., the thermostat is turned off orrequires a delay to restore a temperature to a target temperature), thesystem 200 may enhance property automation and user convenience bycontrolling the lighting devices and the thermostat to prepare aproperty for when a user is expected to be present at the property.

In addition, the system 200 may monitor energy consumption at theproperty and use the monitored energy consumption to determine whichtypes of energy control operations to perform. For instance, when energyconsumption has been measured at a relatively high level for a timeperiod, the system 200 may control energy consuming devices (e.g.,lighting devices, thermostats, etc.) to conserve energy at all timeswhen presence at the property is not detected. Alternatively, whenenergy consumption has been measured at a relatively low level for atime period, the system 200 may control energy consuming devices (e.g.,lighting devices, thermostats, etc.) to prepare the property foranticipated occupancy based on presence patterns, even though noactivity has been detected within the property.

The system 200 may perform several different, types of operationsrelated to controlling the one or more energy consuming devices. Forexample, the system 200 may automatically, without user intervention,control the one or more energy consuming devices based on the analysisof the monitored sensor data and monitored device status. In anotherexample, the system 200 may send alerts or display suggested changes toa user based on the analysis of the monitored sensor data and monitoreddevice status. In this example, the system 200 does not control the oneor more energy consuming devices until the system 200 receives userinput authorizing suggested changes or defining what changes should bemade. Users may determine how much control over the one or more energyconsuming devices to give to the system 200 and the system 200 maydetermine which type of operation to perform based on user preference.FIG. 4 illustrates example rules for controlling one or more energyconsuming devices based on monitored sensor data and the monitoreddevice status. As shown, the example rules include several attributecolumns 401-409 that represent attributes used in assessing the examplerules and an action column 410 that defines an action to be performedwhen the conditions for a rule are met. The attribute columns 401-409include a presence area number one column 401, a presence area numbertwo column 402, a window column 403, a door column 404, a weather column405, a user column 406, a temperature column 407, an energy usage column408, and a geographic location column 409. Although the example rulesshown in FIG. 4 include nine attributes, the nine attributes representexample attributes and actual implementations may include more (orfewer) attributes.

The presence area number one column 401 defines how presence (or lackthereof) detected in a particular area within a property impactsevaluation of a rule. The presence within area number one may be sensedusing a motion sensor, a contact sensor, an image sensor or any othersensor that enables a system to determine whether area number one isoccupied. The presence area number two column 402 is similar to thepresence area number one column 401, but refers to a second area. Thesecond area may be a different area within the same property as thefirst area or may be an area within a separate property from theproperty that includes the first area.

The window column 403 defines how an open or closed state of one or morewindows within a property impacts evaluation of a rule and the doorcolumn 404 defines how an open or closed state of one or more doorswithin a property impacts evaluation of a rule. The open or closed stateof the one or more windows may be sensed by a contact sensor positionedat each of the one or more windows and the open or closed state of theone or more doors may be sensed by a contact sensor positioned at eachof the one or more doors.

The weather column 405 defines how forecasted weather impacts evaluationof a rule. The weather data used to evaluate conditions set in theweather column 405 may be received from a weather feed and may includeany number of relevant weather parameters, such as forecastedtemperature, forecasted humidity, forecasted wind speeds, and forecastedprecipitation (e.g., rain, snow, sleet, sun, etc.).

The user column 406 defines how a user identity associated with an eventimpacts evaluation of a rule. The user identity associated with an eventmay be determined using any type of mechanism (e.g., biometricrecognition techniques, user specific alarm entry codes, etc.) andallows the rules to apply user-specific device control preferences ofspecific users.

The temperature column 407 defines how a measured temperature of athermostat impacts evaluation of a rule and the energy measure column408 defines how an energy measure of one or more energy consumingdevices within a property impacts evaluation of a rule. The energymeasure may relate to energy consumed by a single device (e.g., aheating and cooling system controlled by a thermostat) or a collectiveenergy measure of several (e.g., all) energy consuming devices at one ormultiple properties (e.g., a collective measure of energy consumed by aheating and cooling system controlled by a thermostat, lighting devices,and appliances at a property). The energy measure may be a directmeasure of energy consumed by one or more devices, an estimated energymeasure based on a time of operation and an average energy usage pertime, or a combination of the two. The energy measure may be expressedas a measure in terms of energy usage or a cost of energy used based onutility company rate. The rules may define specific energy usagethresholds or may specify energy usage ranges (e.g., high, medium, low).

The geographic location column 409 defines how a geographic location ofa user impacts evaluation of a rule. The geographic location may bedetermined using any type of mechanism (e.g., GPS, cellular towertriangulation, etc.) and allows the rules to be customized based on howclose the user is to the monitored property.

The example rules include rules 411-426 that each define an action thatis to occur when one or more conditions defined in the attribute columns401-409 are met. The rules 411-426 may be system defined rulesapplicable to multiple (e.g., all) properties or may be user customizedrules set based on user input indicative of the user's preferences.Although the example rules shown in FIG. 4 include sixteen rules, thesixteen rules represent example rules and actual implementations mayinclude more (or fewer) rules. In addition, any combination of theattributes defined in the attribute columns may be used to set a rule.

The rule 411 defines that, when presence is not detected within thefirst area and presence is not detected within the second area, thesystem 200 turns off all lights associated with the first and secondareas and sets all thermostats associated with the first and secondareas to a conserve mode. The rule 412 defines that, when presence isnot detected within the first area and presence is detected within thesecond area, the system 200 turns off lights associated with the firstarea and sets a thermostat associated with the first area to a conservemode. Because presence is detected within the second area, the rule 412allows the lighting devices and thermostat associated with the secondarea to be maintained at their current settings. The rule 413 definesthat, when presence is detected within the first area and presence isnot detected within the second area, the system 200 turns off lightsassociated with the second area and sets a thermostat associated withthe second area to a conserve mode. Because presence is detected withinthe first area, the rule 413 allows the lighting devices and thermostatassociated with the first area to be maintained at their currentsettings.

The rule 414 defines that, when a window is detected as being open, thesystem 200 sends an alert to the user to indicate the open window when athermostat for an area corresponding to the open window is set to acooling or heating mode. In this regard, the rule 414 alerts the user toan inefficient energy usage situation and enables the user to takeappropriate action.

The rule 415 defines that, when a door is detected as being open, thesystem 200 automatically, without human intervention, controls athermostat for an area corresponding to the open door to stop cooling orheating. In this regard, the rule 415 automatically reduces energy losscaused an inefficient energy usage situation.

The rule 416 defines that, when a temperature measured by a thermostatbecomes higher than eighty-five degrees, the system 200 controls thethermostat to a cooling mode regardless of other attribute values at thetime of the eighty-five degree temperature. In this regard, the rule 416defines a maximum high temperature the property is supposed to maintainat all times.

The rule 417 defines that, when a temperature measured by a thermostatbecomes lower than forty-five degrees, the system 200 controls thethermostat to a heating mode regardless of other attribute values at thetime of the forty-five degree temperature. In this regard, the rule 417defines a minimum low temperature the property is supposed to maintainat all times.

The rule 418 defines that, when presence is not detected within thefirst area, presence is not detected within the second area, and a useris detected as being less than one mile from the property, the system200 sends a message to the user to suggest light and appliance control.For instance, the message may suggest turning on lights at the propertyand preheating an oven to prepare the property for the user'santicipated arrival in the near future. The system 200 may performlighting and appliance control based on user input received in responseto the message.

The rule 419 defines that, when presence is not detected within thefirst area, presence is not detected within the second area, and a useris detected as being less than five miles from the property, the system200 automatically, without human intervention, controls the thermostatto a scheduled heating or cooling mode. In this regard, the rule 419automatically prepares a temperature of the property to a conditionsuitable for occupation when the user is expected to arrive at theproperty. The system 200 attempts to automatically start a heating orcooling process with sufficient time prior to the user's expectedarrival to adjust the temperature to a suitable level by the time theuser arrives at the property.

In some implementations, the threshold distance at which the automaticstart of the heating or cooling process begins may be dynamically setbased on how close the current temperature is to the desiredtemperature, how long it typically takes the system to adjust thetemperature from the current temperature to the desired temperature, andhow long it typically takes the user to travel a particular distance. Inthese implementations, the system 200 may set the threshold distance toone mile when the current temperature is two degrees above the desiredtemperature, it typically takes the cooling system two minutes to coolthe property two degrees, and it typically takes the user two minutes totravel to the property from one mile away. As another example, thesystem 200 may set the threshold distance to ten miles when the currenttemperature is twenty degrees above the desired temperature, ittypically takes the cooling system twenty minutes to cool the propertytwenty degrees, and it typically takes the user twenty minutes to travelto the property from ten miles away.

The rule 420 defines that, when presence is not detected within thefirst area, presence is not detected within the second area, and a useris detected as being more than five miles from the property, the system200 automatically, without human intervention, controls the thermostatto a conserve mode. In this regard, the rule 420 automatically conservesenergy used in heating or cooling the property when the user is unlikelyto occupy the property for an extended period of time.

The rule 421 defines that, when presence is detected within the firstarea, presence is not detected within the second area, and user one isdetected as being the user present in the first area, the system 200controls energy consuming devices associated with the first area basedon user one's preferences. The rule 422 defines that, when presence isdetected within the first area, presence is not detected within thesecond area, and user two is detected as being the user present in thefirst area, the system 200 controls energy consuming devices associatedwith the first area based on user two's preferences. In this regard, therules 421 and 422 enable user one and user two to automatically receiveuser-specific control over energy consuming devices within the property.

The rule 423 defines that, when presence is detected within the firstarea, presence is detected within the second area, the forecastedweather indicates a temperature between fifty and eighty degrees, andthe energy measure at the property is at a relatively low level, thesystem 200 controls energy consuming devices in accordance with thescheduled mode. The rule 424 defines that, when presence is detectedwithin the first area, presence is detected within the second area, theforecasted weather indicates a temperature between fifty and eightydegrees, and the energy measure at the property is at a relatively highlevel, the system 200 controls energy consuming devices in accordancewith a conserve mode. In this regard, the rules 423 and 424 cause thesystem 200 to apply preferred cooling and heating when the energymeasure level is relatively low and apply energy conservation coolingand heating when the energy measure level is relatively high and theforecasted temperatures do not anticipate extreme weather.

The rule 425 defines that, when a window is detected as being openand/or a door is detected as being open and the forecasted weatheranticipates rain, the system 200 sends an alert to the user to close thewindow and/or door due to anticipated inclement weather. In this regard,the rule 425 alerts the user to a possible unpleasant situation andenables the user to take appropriate action.

The rule 426 defines a rule that uses all of the attributes in theattribute columns 401-409. Specifically, the rule 426 defines an actionthat occurs when presence is detected within the first area, whenpresence is detected within the second area, when a window is detectedas being closed, when a door is detected as being closed, when theforecasted weather anticipates a temperature greater than ninetydegrees, when the user associated with the detected presence is a pet,when the thermostat is set to an off state, when the energy measure isat a relatively high level, and the user is detected as being more thantwenty miles away from the property. When the conditions specified bythe rule 426 are met, the system 200 sends an alert to the user to setthe thermostat to a cooling mode for the well-being of the pet. In thisregard, the rule 426 alerts the user to a possible unhealthy situationfor the pet and enables the user to take appropriate action.

FIG. 5 illustrates an interface 500 that enables user control overlighting devices and other appliances from a remote location. Theinterface 500 may be presented over a network (e.g., as a webpage on apersonal computer) or may be displayed by an application that operateson a device (e.g., displayed by a native monitoring application on amobile device). The interface 500 includes a lights (and otherappliances) area 510. The area 510 includes controls 512 for controllingall lights within a property. As shown, the controls 512 include a firstcontrol that causes all lights within a property to be turned off and asecond control that causes all lights within a property to be turned on.

The area 510 also includes controls 514 for controlling lightsassociated with a lights dimmer. The controls 514 include a firstcontrol that causes the lights associated with the lights dimmer to beturned off, a second control that causes the lights associated with thelights dimmer to be turned on, and a third control that controls adimmer setting for the lights associated with the lights dimmer whenturned on. The third control includes a slide bar that allows a user toset a dimmer percentage setting, which is shown adjacent to the slidebar.

The area 510 further includes controls 516 for controlling lightsassociated with a kitchen dimmer (e.g., lights positioned within akitchen). The controls 516 include a first control that causes thelights associated with the kitchen dimmer to be turned off, a secondcontrol that causes the lights associated with the kitchen dimmer to beturned on, and a third control that controls a dimmer setting for thelights associated with the kitchen dimmer when turned on. The thirdcontrol includes a slide bar that allows a user to set a dimmerpercentage setting, which is shown adjacent to the slide bar.

In addition, the area 510 includes controls 518 for controlling a coffeemaker. The controls 518 include a first control that causes the coffeemaker to be turned off and a second control that causes the coffee makerto be turned on. Other types of devices and appliances may be controlledin a manner similar to the control of the coffee maker.

The interface 500 includes a scheduled automation area 530 and anevent-triggered automation area 540. The scheduled automation area 530displays time schedule automation that has been set for one or moredevices controlled through the interface 500 and enables a user to add,delete, or change scheduled automations. As shown, a scheduledautomation has been set for the lights dimmer to turn on at 10:00 PM andturn off at 7:00 AM every day of the week.

The event-triggered automation area 540 displays event-triggeredautomation that has been set for one or more devices controlled throughthe interface 500 and enables a user to add, delete, or changeevent-triggered automations. As shown, an event-triggered automation hasbeen set for the lights dimmer to turn on for two minutes when a doorsensor positioned on a work door closes. Any other types of timeschedule and event-triggered automations may be set using the interfaceareas 530 and 540.

FIG. 6 illustrates an interface 600 that enables user control over athermostat from a remote location. The interface 600 may be presentedover a network (e.g., as a webpage on a personal computer) or may bedisplayed by an application that operates on a device (e.g., displayedby a native monitoring application on a mobile device). The interface600 includes a thermostats area 610. The area 610 displays a currenttemperature measured by the thermostat, a current mode set for thethermostat, an indication of when the thermostat measurements were lastupdated, and a target temperature the thermostat is attempting tomaintain at the property. The area 610 also includes a control thatallows a user to set an operating mode of the thermostat and a controlthat allows a user to set a target temperature for the thermostat.

The interface 600 also includes a weather area 620. The weather area 620displays a forecast of the current local weather at the property that isbeing monitored.

The interface further includes a heat schedules tab 630. The heatschedules tab 630 displays a timing schedule for the thermostat, whichshows the target temperature set for time periods within a day for eachday of the week. The timing schedule is used to change the targettemperature of the thermostat throughout the course of a day when theheat schedule mode is set for the thermostat. The heat schedules tab 630may enable a user to change the target temperatures and time rangesincluded in the heat schedule. The cool schedules tab may be similar tothe heat schedules tab 630, but with target temperature data for thecool schedule mode.

FIG. 7 illustrates an interface 700 that shows the interface 600 afterthe threshold settings tab 710 has been selected. The threshold settingstab 710 displays threshold temperatures set for the thermostat andcontrols that change the thresholds. Specifically, the thresholdsettings tab 710 includes a low temperature threshold control and a hightemperature threshold control. The low temperature threshold controlenables a user to set a low temperature threshold and the hightemperature threshold control enables a user to set a high temperaturethreshold. The thermostat maintains the temperature at the property tobe at or above the low temperature threshold and at or below the hightemperature threshold at all times regardless of other energyconservation efforts being taken with respect to the property.

FIG. 8 illustrates an interface 800 that shows the interface 600 afterthe notifications tab 810 has been selected. The notifications tab 810displays notifications set based on thermostat events. The notificationsinclude an event portion that defines the thermostat event that triggersthe notification and a recipient portion that defines the recipients ofthe notification. The monitoring system monitors for the thermostatevents defined in the event portion and sends a notification to usersidentified in the recipient portion when a thermostat event is detected.The notifications tab 810 may enable a user to add, delete, or changeset notifications.

FIG. 9 illustrates an example process 900 for accounting for weatherdata in performing an operation related to controlling one or moreenergy consuming devices. The system 200 accesses weather data (910).For example, the system 200 receives current weather data from a weatherfeed provided by a weather broadcasting system. In this example, thesystem 200 may identify, from the weather feed, the weather datarelevant to the geographic location of a monitored property and accountsfor the identified weather data in performing an operation related tocontrolling one or more energy consuming devices at the monitoredproperty.

The weather data may include a weather forecast for any types of weatherconditions that are included in weather forecasts. For instance, theweather data may include anticipated high and low temperatures,anticipated chances of precipitation, and anticipated weather conditions(e.g., sunny, cloudy, rain, etc.).

The system 200 analyzes the accessed weather data in conjunction withmonitored sensor data and monitored status of one or more energyconsuming devices (920). For example, the system 200 applies theaccessed weather data to a set of one or more rules in combination withthe monitored sensor data and the monitored status of one or more energyconsuming devices. In this example, the accessed weather data may impactwhich action the system 200 performs based on the monitored sensor dataand the monitored status of one or more energy consuming devices. Thesystem 200 determines an operation related to controlling the one ormore energy consuming devices that accounts for the accessed weatherdata (930) and performs the determined operation related to controllingthe one or more energy consuming devices (940). The system 200 maydetermine and perform several different, types of operations related tocontrolling the one or more energy consuming devices that account forthe accessed weather data. For example, the system 200 mayautomatically, without user intervention, control the one or more energyconsuming devices based on the analysis of the accessed weather data inconjunction with the monitored sensor data and the monitored devicestatus. In another example, the system 200 may send alerts or displaysuggested changes to a user based on the analysis of the accessedweather data in conjunction with the monitored sensor data and themonitored device status. In this example, the system 200 does notcontrol the one or more energy consuming devices until the system 200receives user input authorizing suggested changes or defining whatchanges should be made.

FIG. 10 illustrates an example of performing an operation related tocontrolling one or more energy consuming devices determined in a mannerthat accounts for weather data. As shown, a property 1010 is monitoredby a monitoring system. The property 1010 includes an image sensor 1012,a thermostat 1014, and a heating and cooling system 1016. The monitoringsystem monitors image data from the image sensor 1012 and monitors thestate (e.g., the mode set, current temperature measured, etc.) of thethermostat 1014. The thermostat 1014 measures a temperature associatedwith the property 1010 and controls the heating and cooling system 1016based on the measured temperature and a temperature control setting ofthe thermostat 1014.

In the example shown in FIG. 10, the monitoring system analyzes imagescaptured by the image sensor 1012 and detects presence of a pet 1018within the property 1010 based on the analysis of the images. Themonitoring system also detects that the thermostat 1014 is operating inan energy conserve mode in which the air conditioner is turned off. Themonitoring system further receives weather data 1020 that indicates thatthe weather forecast is sunny with an anticipated high temperature ofeighty-five degrees. The monitoring system accumulates all thismonitored data in the monitoring system data 1030. As shown, themonitoring system data 1030 indicates that the weather has ananticipated temperature greater than eighty degrees, that the thermostat1014 is operating in an energy conserve mode in which the airconditioner is turned off, and that the sensed activity in the property1010 suggests a pet being present in the property 1010.

The monitoring system analyzes the monitoring system data 1030 withrespect to one or more rules and determines that an action is neededbased on the monitored attributes stored in the monitoring system data1030. As shown, the monitoring system determines that an alert 1040should be sent to one or more users associated with the property 1010based on the monitored sensor data, the monitored device status, and theanticipated weather. The alert 1040 provides a message indicatingcurrent values for the sensed activity with the property 1010, thestatus of an energy consuming device within the property 1010, and theanticipated weather to enable the one or more users to assess thepotentially unhealthy situation for the pet and take action accordingly.

The alert 1040 includes multiple options for a user to respond to thesituation. For example, the alert 1040 includes an input control 1042that enables a user to see video of the pet. A user may activate theinput control 1042 to see images captured by the image sensor 1012 andattempt to assess the comfort level of the pet to gain more informationabout the situation.

The alert 1040 also includes an input control 1044 that enables a userto receive more detailed information related to the weather forecast. Auser may activate the input control 1044 to see more detailed weatherinformation and attempt to assess the likelihood of the pet being placedin a dangerous situation.

The alert 1040 further includes an input control 1046 that enables auser to adjust the thermostat. A user may activate the input control1046 to display a thermostat adjustment interface with which the usercan provide input and set the thermostat to an appropriate setting forcomfort of the pet.

In addition, the alert 1040 includes an input control 1048 that causesthe monitoring system to monitor actual temperature within the property1010. A user may activate the input control 1048 to cause the monitoringsystem to monitor an actual temperature with the property 1010 andprovide the user an additional alert when the temperature begins risingto an unsafe level. In this regard, the input control 1048 enables theuser to delay the thermostat control decision until the actualtemperature suggests a problem for the pet, rather than basing thedecision on a speculative weather forecast.

Further, the alert 1040 includes an input control 1050 that allows themonitoring system to automatically control the thermostat 1014 for thepet's comfort. When the user activates the input control 1050, themonitoring system automatically, without human intervention, controlsthe thermostat 1014 to maintain a temperature that is comfortable forthe pet while attempting to conserve energy in any opportunity where theenergy conservation would not jeopardize the safety or comfort of thepet. The monitoring system may include pet health monitoring devices(e.g., a temperature sensor for the pet) and may control the thermostat1014 based on the health monitoring data for the pet.

FIG. 11 illustrates an example process 1100 for accounting forgeographic location data in performing an operation related tocontrolling one or more energy consuming devices. The system 200monitors geographic location data of one or more users associated withone or more monitored properties (1110). For example, the system 200determines a geographic location of one or more users associated with amonitored property. In this example, the system 200 may determinegeographic location using any type of mechanism for determining ageographic location of a user. For instance, the system 200 may use GPSdata to determine a geographic location, may use cell towertriangulation to determine a geographic location, or may use an IPaddress of a device being operated by the user to determine a geographiclocation. The system 200 may determine and monitor a geographic locationof one or more users relative to a geographic location of a monitoredproperty (e.g., within a particular number of miles).

The system 200 also may monitor geographic location data over time todetermine a direction in which a user is currently traveling ordetermine typical travel schedules or patterns for a user. The system200 may use the determined direction to determine whether the user ismoving toward or away from a monitored property. The system 200 may usethe typical travel schedules or patterns for the user to determine whena user typically travels to a property.

The system 200 infers future occupancy of the one or more users in theone or more properties based on the monitored geographic location data(1120). For instance, the system 200 may infer future occupancy of amonitored property based on how close a user is to the monitoredproperty. The system 200 may determine that a user within one mile of aproperty will occupy the property within a relatively short period oftime, a user within five miles of a property will occupy the propertywithin a relatively medium period of time, and a user outside of tenmiles from a property will occupy the property within a relatively longperiod of time.

In inferring future occupancy of the one or more users in the one ormore properties based on the monitored geographic location data, thesystem 200 may consider a direction of travel determined for the one ormore users. For example, when a user is moving toward the property at aparticular distance from the property, the system 200 may determine thatthe user will occupy the property within a relatively short period oftime and, when a user is moving away from the property at the particulardistance from the property, the system 200 may determine that the userwill occupy the property within a relatively long period of time. Thesystem 200 also may consider a rate at which a user is traveling ininferring a time when future occupancy is expected.

In some implementations, the system 200 may use typical travel schedulesor patterns for a user in inferring future occupancy. In theseimplementations, the system 200 may analyze the typical travel schedulesor patterns for the user and infer times when the typical travelschedules or patterns suggest that the user will occupy the property.

The system 200 determines an operation related to controlling the one ormore energy consuming devices based on the inferred future occupancy(1130) and performs the determined operation related to controlling theone or more energy consuming devices (1140). The system 200 maydetermine and perform several different, types of operations related tocontrolling the one or more energy consuming devices based on theinferred future occupancy. For example, the system 200 mayautomatically, without user intervention, control the one or more energyconsuming devices based on the inferred future occupancy. In anotherexample, the system 200 may send alerts or display suggested changes toa user based on the inferred future occupancy. In this example, thesystem 200 does not control the one or more energy consuming devicesuntil the system 200 receives user input authorizing suggested changesor defining what changes should be made.

In some examples, the system 200 may perform one or more operationsrelated to preparing a monitored property for anticipated occupationwhen the inferred future occupancy suggests that the monitored propertywill be occupied in a relatively short period of time. These operationsmay include automatically controlling a thermostat to adjust thetemperature at the monitored property to a preferred level for the userthat is expected to occupy the property in the near future or suggestingthat lighting devices and/or appliances within the monitored property beturned on to prepare the property for occupation.

In some implementations, the system 200 may perform one or moreoperations related to conserving energy when the inferred futureoccupancy suggests that the monitored property will not be occupied fora relatively long period of time. These operations may includeautomatically setting a thermostat to an energy conserve mode orensuring that lighting devices and/or appliances within the monitoredproperty are turned off.

FIG. 12 illustrates an example of performing an operation related tocontrolling one or more energy consuming devices based on inferredfuture occupancy. As shown, a property 1210 is monitored by a monitoringsystem. The property 1210 includes a lighting device 1212, an oven 1214,and a thermostat 1216. The monitoring system controls the lightingdevice 1212, the oven 1214, and the thermostat 1216 in accordance of ageographic location of a user 1220 driving toward the property 1210 inan automobile. In this example, the monitoring system monitors threedistance thresholds with respect to the geographic position of the user1220 and, as shown, the example illustrates four, different times withfour, different geographic locations of the user 1220.

At a first time, the monitoring system determines that a geographiclocation of the user 1220 is outside of a first distance threshold thatis furthest from the property 1210. Because the geographic location ofthe user 1220 is outside of the first distance threshold, the monitoringsystem maintains the lighting device 1212, the oven 1214, and thethermostat 1216 in an off state to conserve energy.

At a second time, the monitoring system determines that a geographiclocation of the user 1220 is within the first distance threshold, butremains outside of a second distance threshold that is closer to theproperty 1210 than the first distance threshold. Because the geographiclocation of the user 1220 has reached the first distance threshold, themonitoring system turns the thermostat 1216 to an on state to begincontrolling a heating and/or cooling system of the property 1210 to coolor heat the property 1210 to a suitable temperature for the user 1220.Because the geographic location of the user 1220 has not reached thesecond distance threshold, the monitoring system maintains the lightingdevice 1212 and the oven 1214 in an off state to conserve energy.

At a third time, the monitoring system determines that a geographiclocation of the user 1220 is within the second distance threshold, butremains outside of a third distance threshold that is closer to theproperty 1210 than the second distance threshold. Because the geographiclocation of the user 1220 has reached the second distance threshold, themonitoring system turns the oven 1214 to a preheat state to beginpreparing the oven for use by the user 1220. Also, because thegeographic location of the user 1220 remains within the first distancethreshold, the monitoring system maintains the thermostat 1216 in the onstate. Further, because the geographic location of the user 1220 has notreached the first distance threshold, the monitoring system maintainsthe lighting device 1212 in an off state to conserve energy.

At a fourth time, the monitoring system determines that a geographiclocation of the user 1220 is within the third distance threshold.Because the geographic location of the user 1220 has reached the thirddistance threshold, the monitoring system turns lighting device 1212 toan on state to provide light for the user 1220 when the user arriveshome. Also, because the geographic location of the user 1220 remainswithin the first distance threshold, the monitoring system maintains thethermostat 1216 in the on state. Further, because the geographiclocation of the user 1220 remains within the second distance threshold,the monitoring system maintains the oven 1214 in the preheat state.

In the example shown in FIG. 12, the monitoring system prepares theproperty 1210 for arrival by the user 1220 based on the distancethresholds, which are used to infer when the user 1220 is expected toarrive at the property. Preparing the property 1210 in this manner mayprovide the user 1220 with enhanced convenience because the property1210 is ready for the user 1220 at a time when the user 1220 arriveshome. Moreover, because the monitoring system monitors multiplethresholds and only activates energy consuming devices when the energyconsuming devices are anticipated as being needed, the monitoring systemprovides as much energy conservation as possible while providingenhanced home automation features for the user 1220.

FIG. 13 illustrates an example process 1300 for accounting for useridentity in performing an operation related to controlling one or moreenergy consuming devices. The system 200 detects an event that triggersan operation related to controlling one or more energy consuming devices(1310). For instance, the system 200 determines that monitoredattributes described throughout this disclosure (e.g., sensor data,device status, etc.) indicate performance of an action defined by arule.

In some implementations, the event may be a standalone event thattriggers an operation. In these implementations, the event may be amotion sensor detecting motion within a property or a disarm event for asecurity system.

In some examples, the event may be part of a string of multiple eventsthat trigger an operation. In these examples, the event may be part of apattern of events that is detected by the system 200. When the system200 detects the pattern of events, the system 200 triggers an operationbased on the pattern of events.

The system 200 determines a user identity for one or more usersassociated with the detected event (1320). The system 200 may use anytechnique to determine a user identity of a user. For example, when thedetected event relates to presence within a property, the system 200 mayanalyze image data of the property in an attempt to determine anidentity of the user that is present in the property. In this example,the system 200 may process the image data using facial or body typerecognition techniques to identify an identity of the user. The system200 may use other types of biometric data (e.g., fingerprint scans) toidentify a user.

In another example, when the detected event relates to arming ordisarming of a security system, the system 200 may determine an identityof the user based on a user-specific code used to arm or disarm thesecurity system. In this example, the system 200 may assign differentcodes to different users and detect user identity by determining theidentity assigned to the code entered to arm or disarm the securitysystem.

In some implementations, the system 200 may determine an identity of theuser based on which sensors in a property have been triggered. Forinstance, the system 200 may determine that a first user is in theproperty when a door sensor on the first user's bedroom detects a dooropening and may determine that a second user is in the property when adoor sensor on the second user's bedroom detects a door opening.

The system 200 also may determine multiple user identities when multipleusers are associated with an event. For example, when multiple users arewithin a property, the system 200 may determine a user identity for eachof the multiple users.

The system 200 determines a user-specific operation related tocontrolling the one or more energy consuming devices based on thedetected event and the determined user identity for the one or moreusers (1330) and performs the user-specific operation related tocontrolling the one or more energy consuming devices (1340). The system200 may determine and perform several different, types of operationsrelated to controlling the one or more energy consuming devices based onthe detected event and the determined user identity for the one or moreusers. For example, the system 200 may automatically, without userintervention, control the one or more energy consuming devices based onthe determined user identity for the one or more users. In anotherexample, the system 200 may send alerts or display suggested changes toan identified user based on the determined user identity for the one ormore users.

The operation performed for the same detected event may be different fordifferent users. For instance, when a first user is detected as beingpresent in a property, a thermostat for the property may be set to afirst temperature preferred by the first user. However, when a seconduser is detected as being present in the property, the thermostat forthe property may be set to a second temperature, which is preferred bythe second user and different than the first temperature. As anotherexample, when a first user is detected as approaching a property, alighting device that lights a bedroom of the first user may be turned onand, when a second user is detected as approaching the property, alighting device that lights a bedroom of the second user may be turnedon. Further, when a window is detected as being open at a time when athermostat is controlling a heating and/or cooling system to operate anda first user is present in the property, an alert may be sent to thefirst user to identify the situation. However, when a window is detectedas being open at a time when the thermostat is controlling the heatingand/or cooling system to operate and a second user is present in theproperty, the thermostat may be automatically controlled to turn theheating and/or cooling system off.

In examples in which the system detects identities for multiple users,the system 200 performs operations related to controlling the one ormore energy consuming devices in accordance with preferences of eachidentified user to the extent possible. For instance, the system 200analyzes the preferences for each identified user and determines whetherany conflicts exist (e.g., a first user prefers a different temperaturethan a second user). When the system 200 determines that no conflictsexist, the system 200 applies the preferences of all of the identifiedusers. However, when the system 200 detects one or more conflicts, thesystem 200 resolves the conflicts based on user priority or privilegesdata. For instance, when both a parent user and a child user aredetected within a property and have conflicting preferences, the system200 may determine to apply the preferences of the parent user becausethe parent user has superior priority to the child user.

In some examples, the system 200 resolves conflicts for each specificaction that is triggered. For instance, when both a parent user and achild user are detected within a property and have conflictingtemperature preferences, the system 200 may determine to control a firstthermostat associated with the child user's room to a preferredtemperature of the child and control a second thermostat associated withthe parent user's room to a preferred temperature of the parent.

FIGS. 14A and 14B illustrate examples of performing user-specificoperations related to controlling one or more energy consuming devices.As shown in FIG. 14A, a property 1410 includes a common area 1412, achild's room 1414, and a mom's room 1416. The property 1410 alsoincludes an alarm panel 1420 that controls a security system thatmonitors the property 1410. The property 1410 has thermostat controlsthat enable separate control of the common area 1412, the child's room1414, and the mom's room 1416. The thermostat settings 1430 illustratethat the common area 1412, the child's room 1414, and the mom's room1416 are all set to a conserve mode when no users are present in theproperty 1410.

In the example shown in FIG. 14A, a child arrives home through a frontdoor and enters a child-specific code at the alarm panel 1420 to disarmthe security system of the property 1410. The monitoring system 1440detects entry into the property 1410 based on output from a door sensorat the front door and detects the disarm event at the alarm panel 1420.Based on the detected entry and disarm event, the monitoring system 1440determines that thermostat settings should be changed from thethermostat settings 1430 to settings appropriate for a user beingpresent in the property 1410. In determining how to change thethermostat settings, the monitoring system 1440 determines an identityassociated with the user that entered the property and disarmed thesecurity system. In this example, the monitoring system 1440 determinesthat the child-specific code was used to disarm the security system and,therefore, determines that the child has entered the property 1410.

In response to the determinations that the thermostat settings need tobe changed and that the child is present in the property 1410, themonitoring system 1440 changes the thermostat setting to a “ChildPresent” profile that is appropriate for when the child is present inthe property 1410 alone and reflects the preferences of the child.Accordingly, the monitoring system 1440 changes the thermostat settings1430 to the thermostat settings 1450 in which the common area 1412 andthe child's room 1414 have been set to the child's preferredtemperature. A thermostat setting for the mom's room 1416 has beenmaintained in a conserve mode because the child is unlikely to enter themom's room 1416 and, as such, is unlikely to be impacted by thetemperature in the mom's room 1416.

The example shown in FIG. 14B represents user-specific control thatoccurs when the child is present in the property 1410 and the mom isinferred to be arriving at the property 1410 soon. In this example, themonitoring system 1440 monitors a geographic location of the mom'sautomobile 1460 and infers that the mom is approaching the property 1410based on the monitored geographic location. The monitoring system 1440determines that it is the mom approaching the property 1410 because thegeographic location data processed by the monitoring system 1440 isbeing received from a device associated with the mom (e.g., a navigationsystem of the mom's automobile 1460). The monitoring system 1440determines that the child remains present within the property 1410 inthe child's room 1414 (e.g., based on motion sensor activity in thechild's room 1414 or door openings and closings detected at the child'sroom 1414).

In response to the determinations that the mom is approaching theproperty 1410 and that the child is in the child's room 1414, themonitoring system 1440 changes the thermostat setting to a “MomApproaching” profile that is appropriate for when the child is presentin the child's room 1414 alone and the mom is inferred to be arriving atthe property 1410 in a relatively short period of time. In applying the“Mom Approaching” profile, the monitoring system 1440 changes thethermostat settings 1450 to the thermostat settings 1470 in which thecommon area 1412 and the mom's room 1416 have been set to the mom'spreferred temperature, and the child's room 1414 has been set to thechild's preferred temperature.

In changing the thermostat settings, the monitoring system 1440 analyzedthe preferences of the mom and the child and determined that the mom'spreferred temperature was different than the child's preferredtemperature. Because the child has superior rights to the mom in thechild's room 1414, the monitoring system 1440 maintained the child'sroom 1414 set to the child's preferred temperature. Because the mom hassuperior rights to the child in the common area 1412 and the mom's room1416, the monitoring system 1440 changed the common area 1412 and themom's room 1416 to the mom's preferred temperature.

In some implementations, the child's rights may be impacted by thelocation of the child within the property 1410. In theseimplementations, the monitoring system 1440 may have determined that thechild had superior rights to the temperature in the common area 1412 (atleast until the mom actually arrived at the property 1410) had the childbeen detected as being present in the common area 1412, as opposed tothe child's room 1414. In this regard, had the monitoring system 1440detected the child as being present in the common area 1412, themonitoring system 1440 would have maintained the common area 1412 set tothe child's preferred temperature. The monitoring system 1440 then wouldhave waited to change the temperature of the common area 1412 to themom's preferred temperature until the mom actually arrives at theproperty 1410 or the child is detected as leaving the common area 1412.

FIG. 15 illustrates an example process 1500 for accounting for sensordata from multiple, different locations in performing an operationrelated to controlling one or more energy consuming devices. The system200 monitors sensor data captured by sensors that sense attributes inmultiple, different locations (1510). For instance, the system 200 mayuse techniques similar to those discussed above with respect toreference numeral 310 to sense attributes. The system 200 may senseattributes in multiple, different locations. The system 200 may monitorsensor data from multiple, different areas within a single monitoredproperty (e.g., sensor data from different levels or rooms within ahouse) or may monitor sensor data from multiple, different monitoredproperties (e.g., sensor data from a first security system at a homeresidence and sensor data from a second security system at a vacationresidence).

The system 200 aggregates the monitored sensor data from the multiple,different locations (1520). For example, the system 200 combines themonitored sensor data from the multiple, different locations to enablethe combined data to be analyzed for events occurring in each of thedifferent locations. In this example, the combined or aggregated datamay reflect activity in each of the different locations and, as such,may provide insights as to the relative usage patterns of the differentlocations.

The system 200 analyzes the aggregated sensor data (1530) and performsan operation related to controlling one or more energy consuming devicesassociated with one of the multiple, different locations based on theanalysis of the aggregated sensor data (1540). For instance, the system200 analyzes events detected using the sensor data at the multiple,different locations. The system 200 may analyze patterns of the sensordata at the different locations and take action according to therelative overlap in the patterns of activity at the different locations.For example, the system 200 may determine a first presence pattern thatrelates to when users are typically present in a first property and asecond presence pattern that relates to when users are typically presentin a second property. In this example, the system 200 may compare thefirst and second presence patterns and identify trends that exist withinthe first and second presence patterns relative to one another.

Based on the comparison, the system 200 may determine when activity atthe first property suggests future activity at the second property andvice versa. For instance, the system 200 may detect, that when a userleaves the first property on the weekend, the user travels to the secondproperty. In this instance, the system 200 may perform an operationrelated to controlling one or more energy consuming devices at thesecond property in preparation for the user's arrival when the system200 detects the user leaving the first property on the weekend. Also,the system 200 may detect, that when a user leaves the first property onThursdays, the user travels to a third property. In response todetecting that the user travels to the third property when the userleaves the first property on Thursdays, the system 200 may perform anoperation related to controlling one or more energy consuming devices atthe third property in preparation for the user's arrival when the system200 detects the user leaving the first property on a Thursday.

FIGS. 16A, 16B, and 16C illustrate examples of performing an operationrelated to controlling one or more energy consuming devices associatedwith a monitored property based on sensor data aggregated for multiple,different properties. As shown in FIG. 16A, a monitoring system 1650monitors sensed data and controls one or more energy consuming devicesat each of an office property 1610, a home property 1620, and a vacationproperty 1630. The office property 1610 includes sensors 1612 and analarm panel 1614 for a security system at the office property 1610, thehome property 1620 includes sensors 1622 and an alarm panel 1624 for asecurity system at the home property 1620, and the vacation property1630 includes sensors 1632 and an alarm panel 1634 for a security systemat the vacation property 1630. The monitoring system 1650 maycommunicate, over a network, with each of the alarm panel 1614, thealarm panel 1624, and the alarm panel 1634 to receive sensor data fromsensors included in the corresponding security system. The officeproperty 1610, the home property 1620, and the vacation property 1630are all associated with (e.g., owned by) a single user.

In the example shown in FIG. 16A, the current device settings 1640A showthe status of energy consuming devices at each of the office property1610, the home property 1620, and the vacation property 1630 on aThursday at seven in the evening. At this time, the monitoring system1650 detects that all people are leaving (or have left) the officeproperty 1610, detects no activity at the home property 1620, anddetects no activity at the vacation property 1630. From past monitoredsensor data for the office property 1610, the home property 1620, andthe vacation property 1630, the monitoring system 1650 has derived arelative presence pattern that indicates that, when the all people leavethe office property 1610 on a Thursday evening, a user typically returnsto the home property 1620 in a relatively short period of time and doesnot return to the office property 1610 until the following morning.Also, the monitoring system 1650 has derived that the user is nottypically present at the vacation property 1630 on Thursday evenings.Based on the derived relative presence pattern and the detection of allpeople leaving the office property 1610, the monitoring system 1650determines to prepare the home property 1620 for occupancy in the nearfuture and control devices at the office property 1610 to conserveenergy overnight. In this regard, the monitoring system 1650 sets theoffice profile for the office property 1610 to an “Away Overnight”profile in which energy is conserved for an overnight period and setsthe home profile for the home property 1620 to a “Headed Home” profilein which the home property 1620 is prepared for occupancy. Themonitoring system 1650 maintains the vacation profile for the vacationproperty 1630 as a “Conserve” profile in which energy is conserved atall times because the user is unlikely to travel to the vacationproperty 1630 in the near future. Based on the set profiles, themonitoring system 1650 changes the current device settings 1640A to thenew device settings 1660A.

In the example shown in FIG. 16B, the current device settings 1640B showthe status of energy consuming devices at each of the office property1610, the home property 1620, and the vacation property 1630 on a Fridayat three in the afternoon. At this time, the monitoring system 1650detects that all people are leaving (or have left) the office property1610, detects no activity at the home property 1620, and detects noactivity at the vacation property 1630. From past monitored sensor datafor the office property 1610, the home property 1620, and the vacationproperty 1630, the monitoring system 1650 has derived a relativepresence pattern that indicates that, when the all people leave theoffice property 1610 on a Friday afternoon at three and no activity isdetected at the home property 1620, a user typically travels to thevacation property 1630 and does not return to the office property 1610or the home property 1620 until the following Monday. Based on thederived relative presence pattern and the detection of all peopleleaving the office property 1610, the monitoring system 1650 determinesto prepare the vacation property 1630 for occupancy, control devices atthe office property 1610 to conserve energy for the weekend, and controldevices at the home property 1620 to conserve energy. In this regard,the monitoring system 1650 sets the office profile for the officeproperty 1610 to a “Weekend” profile in which energy is conserved forthe weekend, sets the home profile for the home property 1620 to a“Conserve” profile in which the home property 1620 conserves energy, andsets the vacation profile for the vacation property 1630 to a “Present”profile in which the vacation property 1630 is prepared for occupancy.Based on the set profiles, the monitoring system 1650 changes thecurrent device settings 1640B to the new device settings 1660B.

In the example shown in FIG. 16C, the current device settings 1640C showthe status of energy consuming devices at each of the office property1610, the home property 1620, and the vacation property 1630 on a Fridayat five in the afternoon. At this time, the monitoring system 1650detects that all people are leaving (or have left) the office property1610, detects activity at the home property 1620, and detects noactivity at the vacation property 1630. From past monitored sensor datafor the office property 1610, the home property 1620, and the vacationproperty 1630, the monitoring system 1650 has derived a relativepresence pattern that indicates that, when the all people leave theoffice property 1610 on a Friday afternoon at five and activity isdetected at the home property 1620, a user typically travels to the homeproperty 1620, does not return to the office property 1610 until thefollowing Monday, and does not travel to the vacation property 1630.Based on the derived relative presence pattern and the detection of allpeople leaving the office property 1610, the monitoring system 1650determines to prepare the home property 1620 for occupancy and controldevices at the office property 1610 to conserve energy for the weekend.In this regard, the monitoring system 1650 sets the office profile forthe office property 1610 to a “Weekend” profile in which energy isconserved for the weekend, sets the home profile for the home property1620 to an “At Home” profile in which the home property 1620 iscontrolled in a manner suitable for user presence. The monitoring system1650 maintains the vacation profile for the vacation property 1630 as a“Conserve” profile in which energy is conserved at all times because theuser is unlikely to travel to the vacation property 1630 in the nearfuture. Based on the set profiles, the monitoring system 1650 changesthe current device settings 1640C to the new device settings 1660C.

FIG. 17 illustrates an example process 1700 for performing operationsrelated to managing energy consumption based on an energy managementprofile. The system 200 defines an energy management profile for one ormore monitored properties (1710). For example, the system 200 receivesuser input describing one or more energy management goals or rules thata user would like to set. In this example, the system 200 uses the oneor more energy management goals or rules to define a profile for theuser, which is used to control energy management at one or moreproperties associated with the user.

The energy management profile may include various temperature thresholdsthat define when it is and is not appropriate to control a thermostat toperform energy conservation. The energy management profile also mayinclude device control settings that define how the system 200 isallowed to control various devices (e.g., light devices and appliances)within the one or more monitored properties. In addition, the energymanagement profile may define energy consumption thresholds for the oneor more monitored properties in terms of an energy cost budget or energyusage measurements. The energy management profile may define how muchcontrol the user would like to give the system 200 in meeting thevarious thresholds and budgets defined in the energy management profile.An example energy management profile is shown in FIG. 18 and describedin more detail below.

The system 200 monitors energy usage for energy consuming devicesassociated with the one or more monitored properties (1720). The system200 may measure energy consumed by a single device (e.g., a heating andcooling system controlled by a thermostat) or collectively measureenergy consumed by several (e.g., all) energy consuming devices at oneor multiple properties (e.g., a collective measure of energy consumed bya heating and cooling system controlled by a thermostat, lightingdevices, and appliances at a property). The system 200 may directlymeasure energy consumed by one or more devices (e.g., using output froman energy meter), the system 200 may estimate an energy measure based ona time of operation and an average energy usage per time, or the system200 may use a combination of direct energy measuring and estimatedenergy measuring. The system 200 may determine an energy measure interms of energy usage units or may determine an energy measure in termsof a cost of energy used based on utility company rates. The system 200may determine cost of energy using utility company rates received from autility company or utility company rates derived based on user input(e.g., user input of data included on an energy bill of the user).

The system 200 monitors sensor data for the one or more monitoredproperties (1730). For instance, the system 200 may use techniquessimilar to those discussed above with respect to reference numeral 310to monitor sensor data for the one or more monitored properties.

The system 200 monitors device status for energy consuming devicesassociated with the one or more monitored properties (1740). Forinstance, the system 200 may use techniques similar to those discussedabove with respect to reference numeral 320 to monitor device status forenergy consuming devices associated with the one or more monitoredproperties.

The system 200 analyzes the monitored energy usage, sensor data, anddevice status with respect to the energy management profile (1750) andperforms operations related to managing energy consumption based on theanalysis (1760). For instance, the system 200 analyzes monitored energyusage in relation to events detected using the sensor data and devicestatus information to perform control of the one or more energyconsuming devices. The system 200 may analyze single detected events andtake action according to single detected events. For instance, when thesystem 200 determines that the last user has left a property and themonitored energy usage level is at a relatively high level, the system200 may turn off the lights in the property and set the thermostat to anenergy conserve mode.

The system 200 also may analyze patterns of the energy usage, sensordata, and device status and take action according to the relativeoverlap in the patterns. For example, the system 200 may identifypatterns of activity and device status that lead to relatively high orrelatively low energy usage. In this example, the system 200 may applyincreased efforts to conserve energy when the system 200 detects apattern of activity and device status that typically leads to relativelyhigh energy usage. Alternatively, when the system 200 detects a patternof activity and device status that typically leads to relatively lowenergy usage, the system 200 may perform typical operation and energyconservation operations.

The system 200 may perform several different, types of operationsrelated to controlling the one or more energy consuming devices. Forexample, the system 200 may automatically, without user intervention,control the one or more energy consuming devices based on the analysisof the monitored energy usage, the monitored sensor data, and themonitored device status. In another example, the system 200 may sendalerts or display suggested changes to a user based on the analysis ofthe monitored energy usage, the monitored sensor data, and the monitoreddevice status. In this example, the system 200 does not control the oneor more energy consuming devices until the system 200 receives userinput authorizing suggested changes or defining what changes should bemade.

FIG. 18 illustrates an example energy management profile 1800 that thesystem 200 has defined based on user input and the system 200 uses tocontrol energy management at one or more monitored properties. As shown,the energy management profile 1800 defines an absolute high temperaturethreshold and an absolute low temperature threshold. The system 200controls the thermostat to maintain a temperature of the propertybetween the absolute high temperature threshold and the absolute lowtemperature threshold at all times regardless of other energyconservation efforts and regardless of activity in the property.

The energy management profile 1800 also defines an occupied hightemperature threshold and an occupied low temperature threshold. Thesystem 200 controls the thermostat to maintain a temperature of theproperty between the occupied high temperature threshold and theoccupied low temperature threshold at all times when the property isdetected as being occupied regardless of other energy conservationefforts.

The energy management profile 1800 further defines a preferred occupiedtemperature. The system 200 controls the thermostat to maintain thepreferred occupied temperature when the property is detected as beingoccupied and when energy conservation thresholds do not indicate thatincreased energy conservation efforts are needed to meet energyconsumption budgets.

In addition, the energy management profile 1800 defines a target energybudget per month. The system 200 monitors energy usage levels within theproperty throughout the month and tailors energy conservation efforts inan attempt to meet the target energy budget. For example, when themeasured energy usage levels suggest that the amount of energy consumedin a month is approaching the target energy budget, the system 200 mayautomatically invoke increased energy conservation efforts in an attemptto lower energy consumption costs for the remainder of the month. Whenthe measured energy usage levels suggest that the amount of energyconsumed in a month is well below the target energy budget, the system200 may apply typical operation with normal energy conservation efforts.

Further, the energy management profile 1800 defines utility rate data.For instance, the utility rate data may define a high period where ratesare relatively high, a medium period where rates are relatively medium,and a low period where rates are relatively low. The system 200 may usethe utility rate data to tailor energy usage (or provide alerts to auser to tailor energy usage) toward periods that have lower utilityrates.

The energy management profile 1800 defines a number of parameters of howmuch control the system 200 has over devices in the property. As shown,the energy management profile 1800 includes a parameter that defineswhether the user allows the heating or cooling system to be turned offwhen a window or door is detected as being open. The energy managementprofile 1800 also includes a parameter that defines whether the userallows the system to turn off anticipated presence device control (e.g.,operations, such as thermostat changes, that prepare a property for auser's anticipated arrival). The energy management profile 1800 furtherincludes a parameter that defines whether the user allows the system tocontrol lighting devices and a parameter that defines whether the userallows the system to control appliances. As shown, the energy managementprofile 1800 may define a minimum brightness setting for lightingdevices when the user allows the system to control lighting devices. Inaddition, the energy management profile 1800 includes parameters thatdefine whether the user allows the system to perform automatic controlover devices or prefers alerts to be sent when potential energymanagement operations are detected. In this example, the user has giventhe system automatic control as long as thresholds are met and has askedthat alerts be provided when the set thresholds and the energy budgetcannot both be met. The alerts may allow the user to redefine or havethe system temporarily ignore the thresholds to meet the energy budgetbased on the user's decision.

FIG. 19 illustrates an example process 1900 for performing operationsrelated to managing energy consumption based on an energy managementprofile. The system 200 monitors energy consumption data for multiple,different monitored properties (1910). For instance, the system 200 mayuse techniques similar to those discussed above with respect toreference numeral 1710 to monitor energy consumption data. The system200 monitors energy consumption data for multiple, different monitoredproperties that are remote and separate from each other.

The multiple, different monitored properties may be selected based onvarious criteria. For example, the system 200 may select properties in aparticular geographic area (e.g., all properties within a particularcommunity). The system 200 also may select properties having a similarproperty type (e.g., all single family homes) or properties located in asimilar climate (e.g., properties that are located far away from eachother, but share a similar weather pattern). The system 200 further mayselect properties of users that are connected within a social network.The system 200 may use any combination of these criteria to select whichproperties to monitor. The system 200 monitors sensor data for themultiple, different monitored properties (1920). For instance, thesystem 200 may use techniques similar to those discussed above withrespect to reference numeral 310 to monitor sensor data. The system 200monitors sensor data for the same multiple, different monitoredproperties selected as described above with respect to reference numeral1910.

The system 200 monitors device status for energy consuming devicesassociated with the multiple, different monitored properties (1930). Forinstance, the system 200 may use techniques similar to those discussedabove with respect to reference numeral 320 to monitor device status.The system 200 monitors device status for the same multiple, differentmonitored properties selected as described above with respect toreference numeral 1910.

The system 200 identifies an efficient energy user based on themonitored energy consumption data, sensor data, and device status(1940). For example, the system 200 may identify, from among themonitored properties, a property that has relatively low energy usagelevels. In this example, the system 200 may consider properties withsimilar property types and identify the properties that have relativelylow energy consumption. The system 200 may identify the property havingthe lowest energy consumption or identify properties in a low energyconsumption group (e.g., the bottom ten percent in terms of energyconsumption).

In some implementations, the system 200 analyzes energy consumption atthe monitored properties relative to activity patterns and device usagepatterns at the monitored properties. In these implementations, thesystem 200 looks not only at the total energy consumption at a property,but also energy consumption relative to the amount of time the propertyis occupied and the amount of time energy consuming devices are beingoperated within the property. As such, the system 200 is able toidentify users that use energy efficiently when the users are presentwithin the property. In this regard, the system 200 is able to detectinstances in which a user has a relatively low energy consumption totalat a property, but is infrequently at the property and is notefficiently using energy when the user is at the property. In addition,the system 200 is able to detect instances in which a user has arelatively high energy consumption total at a property, but isfrequently at the property and is efficiently using energy when the useris at the property.

In some examples, the system 200 identifies an energy usage level of amonitored property based on the monitored energy consumption data andidentifies an activity level of the monitored property based on themonitored sensor data and the monitored device status. The activitylevel of the monitored property represents how frequently the monitoredproperty is determined to be occupied based on the monitored sensor dataand how frequently energy consuming devices are detected as being in usein the monitored property based on the monitored device status. In theseexamples, the system 200 determines a ratio of the identified energyusage level of the monitored property and the identified activity levelof the monitored property and identifies a user of the monitoredproperty as an efficient energy user based on the determined ratio.

The system 200 determines an energy usage profile for the efficientenergy user (1950). For instance, the system 200 identifies an activitypattern within the property of the efficient energy user and a devicestatus pattern within the property of the efficient energy user. Theenergy usage profile may describe the energy management settings theefficient energy user uses in efficiently consuming energy.

The system 200 provides energy usage suggestions based on the determinedenergy usage profile for the efficient energy user (1960). For example,the system 200 may present the determined energy usage profile for theefficient energy user to other users to inform the other users of typesof energy management activities the other users can undertake to becomeefficient energy users. The system 200 may limit presentation of theenergy usage profile to users identified as being inefficient energyusers. In addition, the system 200 may limit presentation of the energyusage profile to users that have a similar property type as theefficient energy user and/or that have a similar activity pattern as theefficient energy user. The system 200 also may present comparison datato show an inefficient energy user how much energy savings theinefficient energy user can achieve by adopting the energy usage profileof the efficient energy user as compared to the current energy usage ofthe inefficient energy user.

FIG. 20 illustrates an example of providing energy usage suggestionsbased on determined energy usage profiles for efficient energy users. Asshown, a first property 2010, a second property 2020, a third property2030, and an nth property 2040 are monitored for energy consumptionlevels and activity patterns, such as presence patterns within theproperties. The monitored properties may all belong to users within acommunity that are connected through a social network and have a similarproperty type. Although the example shown in FIG. 20 includes fourmonitored properties, actual implementations may include more (or fewer)monitored properties.

In the example of FIG. 20, an energy profile is determined for eachmonitored property by a monitoring system. The first property 2010 has afirst energy profile 2012 that indicates that a user of the firstproperty 2010 consumes a relatively medium amount of energy, occupiesthe first property 2010 at a relatively high rate, and has a relativelylow ratio of energy usage as compared to presence within the firstproperty 2010. The second property 2020 has a second energy profile 2022that indicates that a user of the second property 2020 consumes arelatively high amount of energy, occupies the second property 2020 at arelatively high rate, and has a relatively high ratio of energy usage ascompared to presence within the second property 2020. The third property2030 has a third energy profile 2032 that indicates that a user of thethird property 2030 consumes a relatively medium amount of energy,occupies the third property 2030 at a relatively low rate, and has arelatively high ratio of energy usage as compared to presence within thethird property 2030. The nth property 2040 has an nth energy profile2042 that indicates that a user of the nth property 2040 consumes arelatively low amount of energy, occupies the nth property 2040 at arelatively low rate, and has a relatively low ratio of energy usage ascompared to presence within the nth property 2040.

Based on the energy profiles, the monitoring system identifies users ofthe first property 2010 and the nth property 2040 as efficient energyusers and identifies users of the second property 2020 and the thirdproperty 2030 as inefficient energy users. In response to theidentification of the user of the first property 2010 as an efficientenergy user, the monitoring system determines a device setting profile2014 for the first property 2010. In response to the identification ofthe user of the nth property 2040 as an efficient energy user, themonitoring system determines a device setting profile 2044 for the nthproperty 2040.

In addition, the monitoring system identifies the user of the secondproperty 2020 as an inefficient energy user that has a similar presencepattern as the user of the first property 2010. The monitoring systemalso identifies the user of the third property 2030 as an inefficientenergy user that has a similar presence pattern as the user of the nthproperty 2040. In response to the identification of the user of thesecond property 2020 as an inefficient energy user that has a similarpresence pattern as the user of the first property 2010, the monitoringsystem provides a suggestion 2024 to the user of the second property2020 that suggests the efficient energy usage profile determined for theuser of the first property 2010. In response to the identification ofthe user of the third property 2030 as an inefficient energy user thathas a similar presence pattern as the user of the nth property 2040, themonitoring system provides a suggestion 2034 to the user of the thirdproperty 2030 that suggests the efficient energy usage profiledetermined for the user of the nth property 2040.

The monitoring system also aggregates in storage 2050 efficient profilesfor display and analysis. The monitoring system may analyze a largenumber of efficient profiles to identify preferred energy managementtechniques and derive an efficient energy management profile thataccounts for the large number of efficient profiles. The monitoringsystem may use the derived efficient energy management profile toperform automatic energy management control for users of the monitoringsystem and also may present the derived efficient energy managementprofile as a suggested profile that users may choose to adopt. Themonitoring system further may determine and aggregate profiles forinefficient energy users to identify energy practices to avoid. Theenergy practices to avoid may be used to perform automatic energymanagement control for users of the monitoring system and also may bepresented to users as practices to avoid.

The described systems, methods, and techniques may be implemented indigital electronic circuitry, computer hardware, firmware, software, orin combinations of these elements. Apparatus implementing thesetechniques may include appropriate input and output devices, a computerprocessor, and a computer program product tangibly embodied in amachine-readable storage device for execution by a programmableprocessor. A process implementing these techniques may be performed by aprogrammable processor executing a program of instructions to performdesired functions by operating on input data and generating appropriateoutput. The techniques may be implemented in one or more computerprograms that are executable on a programmable system including at leastone programmable processor coupled to receive data and instructionsfrom, and to transmit data and instructions to, a data storage system,at least one input device, and at least one output device. Each computerprogram may be implemented in a high-level procedural or object-orientedprogramming language, or in assembly or machine language if desired; andin any case, the language may be a compiled or interpreted language.Suitable processors include, by way of example, both general and specialpurpose microprocessors. Generally, a processor will receiveinstructions and data from a read-only memory and/or a random accessmemory. Storage devices suitable for tangibly embodying computer programinstructions and data include all forms of non-volatile memory,including by way of example semiconductor memory devices, such asErasable Programmable Read-Only Memory (EPROM), Electrically ErasableProgrammable Read-Only Memory (EEPROM), and flash memory devices;magnetic disks such as internal hard disks and removable disks;magneto-optical disks; and Compact Disc Read-Only Memory (CD-ROM). Anyof the foregoing may be supplemented by, or incorporated in,specially-designed ASICs (application-specific integrated circuits).

It will be understood that various modifications may be made. Forexample, in some implementations, the system 200 (e.g., one or morecomponents of the system 200) may implement a savings calculator. Inthese implementations, the system 200 catalogs every single action ittakes. The cataloged actions include any operation the system 200performs automatically (e.g., without human intervention), or anythinginferred to be a user response to a system alert. For instance, if thesystem 200 alerts the user that the user's property (e.g., house) isbeing excessively cooled while unoccupied, and the system 200 detectsthat the user subsequently, within a configurable amount of time, takesaction to reduce the cooling schedule of the property, then the system200 considers the user response to the alert as a “system action,” whichis cataloged. The system 200 maintains a database of all actions andalso rate information, size of home, and home efficiency rating (whichmay be derived using techniques described below), as well as government(e.g., Department of Energy) guidelines, to estimate savings associatedwith each action. The system 200 may estimate savings for each actiontaken and may aggregate the estimated savings to generate an overallsavings estimate for a period of time. The system 200 may display thesavings estimate(s) to a user or may perform control operations based onthe savings estimate(s).

In some examples, the system 200 derives a Home R Value Rating for amonitored property. In these examples, the system 200 determines aninside temperature of a monitored property and outside weatherinformation using techniques described throughout this disclosure. Basedon the determined inside temperature of the monitored property and theoutside weather information, the system 200 derives the property'soverall R rating. For example, the system 200 may detect that nobody isat the monitored property and that it is eight-eight degrees outside,and determine that this is a good time to test a cooling system (e.g.,HVAC) to derive an R value for the monitored property. In response, thesystem 200 launches a test, which cools the property to seventy degreesand then shuts off the cooling system (e.g., HVAC) and all lights orother heat emitting devices (within reason) within the property. Thesystem 200 next watches how quickly the internal temperature of theproperty rises. From the internal temperature rising data, the system200 calculates the R value for the property. The system 200 then usesthe calculated R value to more efficiently control the thermostat tominimize usage and maximize efficiency on behalf of the consumer.

In some implementations, the system 200 judges the efficiency of aheating and cooling system (e.g., an HVAC system) at a property on arelative basis. In these implementations, the system 200 determines theproperty's R value (e.g., using the derivation techniques describedabove or having the user input the property's R value), and observes thework of the heating and cooling system (e.g., the HVAC system) toraise/lower temperatures. Based on analysis of the property's R valueand the observations related to the work of the heating and coolingsystem (e.g., the HVAC system) to raise/lower temperatures, the system200 determines one or more ways to improve either the R value of theproperty or the heating and cooling system (e.g., the HVAC system), andalerts the user accordingly. Based on the knowledge of the R value ofthe property, the weather patterns for the location of the property, theoccupancy patterns for the property, and the desires of the propertydwellers, the system 200 computes what the potential savings would befrom different types of heating or cooling systems (e.g., geothermal,oil, gas, swamp cooler, electric, etc.) and informs the propertydwellers of the same. The system 200 may provide personalized automatedconsulting advice on these critical system decisions and offeradvertisements to the property dwellers based on the decisions thesystem 200 makes.

In some examples, the system 200 is a learning system. In theseexamples, the system 200 runs experiments occasionally on cooling orheating a property, or heating water at the property. For instance,given a certain expected outdoor weather condition (e.g., weather,humidity, solar intensity), the system 200 may advise the property ownerto close all window drapes one day before going to work and calculate abaseline for that day. The system 200 then, during periods of that day,experiments with different cooling intensity control process (e.g.,gradual cooling versus intensive cooling) and measures the work requiredto create a certain amount of temperature change. Based on the resultsof the experiments, the system 200 learns how gradually or intensivelyto proceed with cooling the property to best achieve efficientoperation. The system 200 may use this learned information to controlfuture heating or cooling scenarios in a more efficient manner.

The system 200 may use a similar type of analysis to learn efficiencyinformation related to a water heater at the property. Given a certainexisting temperature and a certain temperature of inflowing water, thesystem 200 experiments with heating element intensity of the waterheater and learns which is the best rate at which to prepare watertemperature for an expected human presence.

The system 200 may constantly use its archive of information to learnover time, and the system 200 may dynamically and without user driveninputs, run tests (usually with no occupants) to maximize itsunderstanding of the property. The system 200 may occasionally promptthe user on a periodic basis (e.g., Quarterly) to ask “Have you changedanything in your home such as new windows, drapes, floor covering,insulation, roofing, external painting, etc.?” If the user answers“Yes,” then system 200 recalibrates and uses the additionaluser-inputted data as another variable in the learning process.

Other useful implementations could be achieved if steps of the disclosedtechniques were performed in a different order and/or if components inthe disclosed systems were combined in a different manner and/orreplaced or supplemented by other components. Accordingly, otherimplementations are within the scope of the disclosure.

1. (canceled)
 2. A monitoring system comprising: at least one processor;and at least one computer-readable storage medium coupled to the atleast one processor having stored thereon instructions which, whenexecuted by the at least one processor, causes the at least oneprocessor to perform operations comprising: monitoring sunrise time; andautomatically controlling a light based on the monitored sunrise time.3. The monitoring system of claim 2, wherein automatically controllingthe light based on the monitored sunrise time comprises automaticallyturning on the light at sunrise based on the monitored sunrise time. 4.The monitoring system of claim 3, wherein the operations furthercomprise: monitoring sunset time; and automatically turning off thelight at sunset based on the monitored sunset time.
 5. The monitoringsystem of claim 2, wherein the operations further comprise: monitoringsunset time; and automatically controlling the light based on themonitored sunrise time and the monitored sunset time.
 6. The monitoringsystem of claim 2: wherein monitoring sunrise time comprises receivinginformation related to sunrise time from a monitoring application serverand storing the received information related to sunrise time for use incontrolling the light; and wherein monitoring sunset time comprisesreceiving information related to sunset time from the monitoringapplication server and storing the received information related tosunset time for use in controlling the light.
 7. The monitoring systemof claim 2, wherein monitoring sunrise time comprises receivinginformation related to sunrise time from a monitoring application serverand storing the received information related to sunrise time for use incontrolling the light.
 8. The monitoring system of claim 2, whereinautomatically controlling the light based on the monitored sunrise timecomprises automatically controlling the light based on the light beingspecified by a user as a light to control based on sunrise time.
 9. Themonitoring system of claim 2, wherein automatically controlling thelight based on the monitored sunrise time comprises automaticallycontrolling multiple lights based on the monitored sunrise time.
 10. Themonitoring system of claim 2, wherein automatically controlling multiplelights based on the monitored sunrise time comprises automaticallycontrolling the multiple lights based on each of the multiple lightsbeing specified by a user as a light to control based on sunrise time.11. The monitoring system of claim 2, wherein monitoring sunrise time isperformed by a native monitoring application of the monitoring systemand automatically controlling the light based on the monitored sunrisetime is performed by the native monitoring application of the monitoringsystem.
 12. A method for controlling a light, comprising: monitoring, bya monitoring system, sunrise time; and automatically controlling, by themonitoring system, a light based on the monitored sunrise time.
 13. Themethod of claim 12, wherein automatically controlling the light based onthe monitored sunrise time comprises automatically turning on the lightat sunrise based on the monitored sunrise time.
 14. The method of claim13, further comprising: monitoring sunset time; and automaticallyturning off the light at sunset based on the monitored sunset time. 15.The method of claim 12, further comprising: monitoring sunset time; andautomatically controlling the light based on the monitored sunrise timeand the monitored sunset time.
 16. The method of claim 12: whereinmonitoring sunrise time comprises receiving information related tosunrise time from a monitoring application server and storing thereceived information related to sunrise time for use in controlling thelight; and wherein monitoring sunset time comprises receivinginformation related to sunset time from the monitoring applicationserver and storing the received information related to sunset time foruse in controlling the light.
 17. The method of claim 12, whereinmonitoring sunrise time comprises receiving information related tosunrise time from a monitoring application server and storing thereceived information related to sunrise time for use in controlling thelight.
 18. The method of claim 12, wherein automatically controlling thelight based on the monitored sunrise time comprises automaticallycontrolling the light based on the light being specified by a user as alight to control based on sunrise time.
 19. The method of claim 12,wherein automatically controlling the light based on the monitoredsunrise time comprises automatically controlling multiple lights basedon the monitored sunrise time.
 20. The method of claim 12, whereinautomatically controlling multiple lights based on the monitored sunrisetime comprises automatically controlling the multiple lights based oneach of the multiple lights being specified by a user as a light tocontrol based on sunrise time.
 21. The method of claim 12, whereinmonitoring sunrise time is performed by a native monitoring applicationof the monitoring system and automatically controlling the light basedon the monitored sunrise time is performed by the native monitoringapplication of the monitoring system.